Scanner
/*
1. 导包 import java.util.Sacnner;
2. Scanner的实例化, Scanner scan = new Scanner(System.in);
3. 调用相关方法,获取指定变量
*/
if
int m=0,n=3;
if(m>0)
if(n>2)
System.out.println("A");
else
System.out.println("B");
// if下只有一条语句,则不必有{}
// else采用就近原则匹配if
switch-case
根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应的case中,当执行完语句后,则继续向下执行其他case中的语句,直到遇到break或者全部case执行完。
switch中的表达式只能是以下6种类型:byte,short,char, int,枚举类型(JDK5.0),String(JGK7.0)
switch(表达式){
case 常量1:
语句1;
//break;
case 常量2:
语句2;
//break;
……
case 常量n:
语句n;
//break;
default: // (可选), 位置不定
语句;
//break;
}
如果switch-case结构中的多个case的执行语句一样,则可以考虑合并
//对学生成绩大于 60 分的,输出“合格”。低于 60 分的,输出“不合格” 。
int score = 78;
switch(score / 10){
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("不及格")
case 6:
case 7:
case 8:
case 9:
case 10:
System.out.println("及格")
}
如果判断的具体数值不多,而且符合 byte、short、char、int、String、枚举等几种类型。虽然两个语句都可以使用,建议使用 swtich 语句。因为 效率稍高 。
其他情况:对区间判断,对结果为 boolean 类型判断,使用 if,if 的使用范围更 广。也就是说,使用switch case的,都可以改写为 if else。反之不成立。
for
for(初始化部分,可多个语句;循环条件;迭代部分,可多个语句){
循环体;
}
while
初始条件;
while(循环条件){
循环体;
迭代部分;
}
do-while
初始化部分;
do{
循环体;
迭代部分;
}while(循环条件)
break、continue
label:for(int i=0;i<=4;i++){
for(int j=0;j<=10;j++){
if(j%4==0){
continue;// 结束当次循环,后面不能声明执行语句
break;// 结束当前循环,后面不能声明执行语句
break label;//结束指定层循环
continue label;//结束指定层的某次循环
}
System.out.println(j);
}
System.out.println();
}