当前位置: 代码迷 >> 综合 >> Java流程控制(一)day03
  详细解决方案

Java流程控制(一)day03

热度:61   发布时间:2023-12-05 13:20:51.0

Java流程控制

用户交互Scanner

Scanner对象

  • next();不能得到带有空格的字符串 空白为结束符

    public class Demo01 {public static void main(String[] args) {//创建一个扫描器对象,用于接收键盘数据Scanner scanner = new Scanner(System.in);
    ?System.out.println("使用next接受:");//判断用户有没有输入字符串if (scanner.hasNext()){//使用next方式接收String str=scanner.next();System.out.println("输入的内容为:"+str);}//属于io流的类不关闭会一直占用资源,要记得关闭。scanner.close();}
    }

  • nextline();可获得空白 enter为结束符

    public class Demo02 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("nextline接受");
    ?if(scanner.hasNextLine()){String s = scanner.nextLine();System.out.println("内容是"+s);}scanner.close();}
    }//if可要可不要

    例题:输入多个数字,求总和和平均数,每输入一个数字用回车确认,通过输入的非数字结束输入并跳出结果

    public class Demo04 {public static void main(String[] args) {//输入多个数字,求总和和平均数,每输入一个数字用回车确认,通过输入的非数字结束输入并跳出结果,Scanner scanner=new Scanner(System.in);
    //          和double sum =0;
    //          输入了多少个数字int m=0;
    //          通过循环判断是否还有输入,并在里面对每一次进行求和统计while(scanner.hasNextDouble()){double v = scanner.nextDouble();m++;sum=sum+v;System.out.println("输入了"+m+"个数字,总和为"+sum);}System.out.println(m+"个数的和为"+sum);System.out.println(m+"个数的平均值为"+(sum/m));scanner.close();}

顺序结构

从上到下

选择结构***

if单选择结构

public class Demo01 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);System.out.println("请输入内容:");String s=scanner.nextLine();
?if (s.equals("hello")){System.out.println(s);
?}System.out.println("ENd");scanner.close();}
}

if双选择结构

public class ShunXuDemo {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);
//输出成绩大于60及格小于60不及格System.out.println("请输入成绩:");int i = scanner.nextInt();if(i>60){System.out.println("及格");}else{System.out.println("不及格");}
?
?scanner.close();}
}

if多选择结构

public static void main(String[] args) {Scanner scanner = new Scanner(System.in);
?System.out.println("请输入成绩:");int score = scanner.nextInt();
?
?if(score==100){System.out.println("满分");}else if(score<100 && score>80){System.out.println("良好");} else if(score<80 && score>60){System.out.println("及格");} else if(score<60 && score>0){System.out.println("不及格");}else{System.out.println("成绩不合法!");}
?
?scanner.close();}

嵌套的if结构

//例
if(1000<= num && num<=9999) {int ge = num / 1 %10;int shi = num /10 % 10;int bai = num /100 % 10;int qian = num /1000 %10;if(ge +shi+bai+qian>20) {System.out.println("恭喜您成为本店的幸运顾客!");

Switch多选择结构

//case穿透 switch匹配一个具体的值!!!

public static void main(String[] args) {char grade='1';
//case穿透    switch匹配一个具体的值!!!switch(grade){case 'A':System.out.println("优秀");break;case 'B':System.out.println("良好");break;case 'C':System.out.println("及格");break;case 'D':System.out.println("不及格");break;default:System.out.println("不知道");}

JDK7新特性表达式结果可以是字符串!本质还是数字hascode

反编译

java--class(字节码文件)--反编译(Idea)

open in--explorer 把class文件拖进即可。

  相关解决方案