目录
选择语句
if语句
以下4种形式
if(布尔表达式){
java语句;
java语句;
}
if(布尔表达式){
java语句;
java语句;
}else{
java语句;
}
if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}
if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else{
java语句;
}
- 以上4种语法机制中,凡是带有else分支的,一定可以保证会有一个分支执行,如果没有,可能会导致最后一个分支都不执行
- 当分支当中"java"语句;"只有一条,那么大括号{}可以省略,但为了可读性,最好不要省略
public class Test{
public static void main(String[] arg){
boolean sex=true;
if(sex)
System.out.println("男");
else
System.out.println("女");
}
}
以上代码能执行,输出男
public class Test{
public static void main(String[] arg){
boolean sex=true;
if(sex)
System.out.println("男");
System.out.println("Hello World!");
else
System.out.println("女");
}
}
以上代码报错:有if,没有else(实际上是else没有能匹配的if,上面的if和sout("男")自己组合了在一起)
Switch语句
switch(值){
case 值1:
java语句;
break;
case 值2:
java语句;
break;
default:
java语句;
}
- 以上是一个完整的switch语句:其中:bieak不是必须的,default分支也不是必须的,在JDK8之前switch的值只支持int。JDK8之后,能支持 String和 int(写入bite、short、 char会自动转换为int类型)
- switch语句中"值"与"值1"、"值2" 比较的时候会使用"=="进行比较
- case穿透现象,如果"值"与"值1"匹配,如果没有break,会继续执行下面Java语句
- 所有case都四配不上时,执行 default
case合并
case 1:case 2:case 3:
System.out.println("Monday");
循环语句
for语句
for(初始化表达式;条件表达式;更新表达式){
循环体; //由java语句组成
}
3个表达式都不是必须的
for(;;){
死循环;
}
while语句
while(布尔表达式){
循环体;
}
do...while语句
do{
循环体;
}while (布尔表达式);
大括号有结束的意思,小括号没有,所以要加分号。
转向语句
break语句
和continue一样都是一个单词成为一个语句
- 用来终止switch语句的执行
- 用在循环语句中,用来终止循环的执行
for(int i=0;i<10;i++){
if(i==5){
break;
}
System.out.println("i="+i);
}
输出结果:0、1、2、3、4
要想break结束离得远的循环,可以用以下语法(可以终止指定循环)
a:for(int k=0;k<2;k++){
b:for(int i=0;i<10;i++){
if(i==5){
break a;
}
}
}
continue语句
终止当前本次循环,直接进入下一次循环继续执行
for(int i=0;i<10;i++){
if(i==5){
continue;
}
System.out.println("i="+i);
}
输出结果:0、1、2、3、4、6、7、8、9