Java条件控制
if
if(){
}else if(){
}else if(){
}else{
}
switch
- JDK7新特性,可以使用字符串作为表达式
//JDK7的新特性,可以使用字符串作为switch表达式
String name = "周星";
switch (name) {
case "周星":
System.out.println("周星");
break;
case "张哈":
System.out.println("张哈");
break;
case "数据":
System.out.println("数据");
break;
}
- 使用idea反编译(将输出的class字节码文件拖入到idea中,可自动进行反编译),可以看到代码的执行流程
String name = "周星";
byte var3 = -1;
switch(name.hashCode()) {
case 695991:
if (name.equals("周星")) {
var3 = 0;
}
break;
case 776616:
if (name.equals("张哈")) {
var3 = 1;
}
break;
case 830462:
if (name.equals("数据")) {
var3 = 2;
}
}
switch(var3) {
case 0:
System.out.println("周星");
break;
case 1:
System.out.println("张哈");
break;
case 2:
System.out.println("数据");
}
可以看出还是使用数字进行判断
增强for循环
- Java5引入了一种用于数组或者集合的增强型for循环
- 格式
int[] nums={10,20};
for (int num : nums) {
System.out.println(num);
}
标签
- 标签是指后面跟一个冒号的标识符
- 唯一用到标签的地方在循环语句之前,使得在嵌套循环中,可以中断到存在标签的位置
- 例程
public static void main(String[] args) {
//输出100-150的质数
label:
for (int i = 100; i < 150; i++) {
for (int j = 2; j < i / 2; j++) {
if (i % j == 0) {
continue label;
}
}
System.out.println(i + " ");
}
}

浙公网安备 33010602011771号