Java流程控制
Scanner
next()
//创建一个Scanner对象,用于接收输入
Scanner scanner = new Scanner(System.in);
if(scanner.hasNext()){ //hasNext()或hasNextLine判断是否有输入的数据
String str=scanner.next(); //next()或nextLine()获取输入
System.out.println("str = " + str);
}
//凡是属于IO流的类如果不关闭会一直占用资源
scanner.close();
nextLine()
Scanner sc=new Scanner(System.in);
/*
asdasd asdasd
nextLine() : asdasd asdasd
asdsad asdasd
next() : asdsad
*/
String str2=sc.nextLine();
System.out.println("nextLine() : "+str2); //回车之前的都算
String str=sc.next();
System.out.println("next() : "+str); //不能得到带有空格的字符串
sc.close();
nextInt , nextDouble
顺序结构
从上到下依次执行
高级语言三大控制结构 : 顺序 , 选择 , 循环
选择结构
if(布尔表达式)–只能是布尔表达式
Scanner scanner = new Scanner(System.in);
System.out.println("请输入内容");
String s = scanner.nextLine();
//单选择
//双选择
if(s.equals("Hello")){
System.out.println(s);
}else{
System.out.println("World");
}
//多选择结构
if(true){
}else if(true){
}else{
}
//嵌套的if语句
scanner.close();
switch
switch 中的表达式可以是byte , short , int ,char ,String
注意落空行为 , case 穿透
String s="A";
switch (s){
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("数据错误");
}
反编译
目标文件—源程序
通过hashCode判断
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u5BbsOij-1638108049872)(C:\Users\Yu\Desktop\Snipaste_2021-11-14_10-52-37.png)]
循环结构
while循环
do…while循环
即使不满足条件,也能执行一次
while先判断后执行
do…while先执行后判断
for循环
最有效,最灵活的循环
IDEA快捷键 : 100.for
增强for循环
主要为数组使用
int[] a={10,20,30,40,50};
for(int i:a){
System.out.println(i);
}
break , continue
-
break : 用于强制退出循环 , 不执行循环中剩余的语句 , 也可以用在switch语句中
-
continue : 用在循环语句体中 , 用于终止某次循环 , 接着进行下一次循环
goto也是Java保留字,但是不使用
"标签" :
对于Java来说,唯一用到标签的地方是在循环语句之前
知道有这个东西就行
outer:for(int i=100;i<=200;i++){
for(int j=2;j<=Math.sqrt(i);j++){
if(i%j==0){
continue outer;
}
}
System.out.print(i+" ");
}