程序流程控制
程序运行的流程控制决定程序是如何执行的
三大流程控制语句
- 顺序控制 :程序从上到下逐行执行,中间没有任何判断和跳转(默认流程)
- 分支控制
- 循环控制
分支控制
基本语法
字符串比较
“比较值”.equals(变量名)
String str = sc.next();
if ("admin".equals(str)) {
System.out.println("输入密码");
break;
}
单分支 if
若{}内只有一条语句,则可以不用{}
双分支 if else
多分支 if else if else
多分支可以没有 else
boolean a = true;
if(a = false){
System.out.println(a);
}
else if(a){
System.out.println('b');
}
else if (!a){
System.out.println('c'); //最后输出c
嵌套分支
在一个分支结构中又完整的嵌套了另一个完整的分支结构,里面的分支结构称为内层分支,外面的分支结构称为外层分支 规范:建议不超过三层(可读性差)
if{
if{
}
}
switch分支结构
case执行程序后,若没有break语句,则不会进行判断是否匹配case语句,直接执行下一句的程序,若后续的语句都没有break,则会把后面的语句全部执行,包括default。(穿透现象)
生成随机数
Math.random() : 返回带正号的double,该值大于等于0.0,小于1.0
for(int i = 1;i < 10;i++){
System.out.println((int) (Math.random()* 100 ) + 1);//输出1-100的随机数
}
跳转控制语句break、 continue、return
用与终止某个语句块,一般用于switch或循环中 { break;
}
continue、break中的标签(label)
break语句出现在多层嵌套的语句中时,可以通过标签指明要终止哪一层的语句块,若无标签,默认退出最近的循环体
label(可自定义名称)
for(int i = 1;i <= 6;i++){
label1:
for(int j = 1; j <= 6 - i ;j++){
if(i == 3){
break lable1;
}
System.out.print(" ");
}
continue
用于结束本次循环,继续执行下一次循环
continue语句出现在多层嵌套的循环语句体中,可以通过标签指明要跳过的是那一层循环
return
表示跳出所在的方法
return写在main方法,会退出程序
面向对象中,再哪被调用,就返回到哪里