003-程序流程控制
程序流程控制
- 程序的三种执行顺序
- 顺序结构
- 分支结构
- 循环结构
分支结构
if
// =============================================
if(条件表达式){
代码;
}
// =============================================
if(条件表达式){
代码1;
} else{
代码2;
}
// =============================================
if(条件表达式1){
代码1;
} else if(条件表达式2){
代码2;
} else if(条件表达式3){
代码3;
}
...
else{
代码n;
}
switch
switch (a) {
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
default:
System.out.println("default");
break;
}
-
switch性能比if好些,所以做值匹配问题用switch,做区间判断用if
-
switch表达式类型只能是
- 基本类型:byte、short、int、char
引用类型:String(Java 7+)、枚举类型
包装类(自动拆箱):Byte、Short、Integer、Character
- 基本类型:byte、short、int、char
-
case表达式类型只能是
-
字面量:如 case 1:、case "a":
-
final static 常量:
public static final int MAX = 10; switch (x) { case MAX: // 合法(前提是 MAX 是编译期常量) // ... }
-
-
不写
break;
的话会穿透下来
循环结构
for
for (int i = 0; i < 10; i++) {
System.out.println(i);
if (i == 5) {
break;
} else if (i == 3) {
continue;
}
}
while
- 使用规范:指导循环几次用for,不知道用while
do-while
- 先执行后判断,一定会执行一次
死循环
- 服务器或者猜数字会用到死循环
嵌套循环
- 多层循环嵌套
打印知识点
System.out.println();
是换行打印System.out.print();
是不换行打印
随机数知识点
-
Math.random()
:返回一个[0, 1)的随机小数(int)(Math.random() * 10)
:生成一个0到9的数字
-
Random random = new Random(); int randomNum = random.nextInt(100) + 1; // 0到99,加一1到100 System.out.println(randomNum);