文章目录
- 控制语句
- 条件语句
- if语句
- switch语句
- 循环语句
- for语句
- while 语句
- do .. while;语句
- 关于for循环和while循环的一道面试题
- break & continue
控制语句
条件语句
if语句
根据不同条件,执行不同语句。
- if
- if … else
- if … else if
- if … else if … else if … else
语法:if(条件表达式){语句}
if(a>b){ //条件表达式必须是一个返回布尔结果的表达式。
System.out.println(a); //语句可以是用{}包含的语句块。
}
- 条件表达式结果为true则执行它后面的语句块.为false则不执行.
- if 后面的语句如果不用{}扩起来,则默认if后的第一个语句是否执行.
if(true)
System.out.print("A");
System.out.print("B"); //输出AB
if(false)
System.out.print("A");
System.out.print("B"); //输出B
switch语句
功能:多分支选择语句,根据switch后的表达式的值,来执行多个操作中的一个.
switch(a){ //表达式
case 1 :System.out.println("1"); break;
case 2 ;System.out.println("2"); break;
case 3 ;System.out.println("3"); break;
case 4 ;System.out.println("4"); break;
case 5 ;System.out.println("5"); break;
default;System.out.println("和上面每一个都不相同"); //缺省语句
}
需要注意的是
1.case后只能使用常量表达式且它们的值不能重复
2.switch后的表达式的数据类型只能是byte,short,int,char,枚举类型和String不能是浮点数以及布尔类型的值.
3.某个case分支如果没有提供break语句,则继续执行下一个case后的语句;
4.当表达式的值与任一case子句中的值都不匹配时,将执行default后面的语句;如果没有default子句,则程序直接跳出switch语句。
由此我们可以总结出在哪些特定的情况下选择使用if语句或者switch语句.
如果所需判断的具体数值不多,而且表达式符合byte、 short 、int、 char这四种类型的情况下。两个语句都可 以使用,但switch语句效率稍高,因此建议使用switch语句.
而在对区间进行判断,对结果为boolean类型判断时,则推荐使用if语句,if语句的使用范围更广。
循环语句
功能:在某些条件满足的情况下,反复执行特定代码 .
循环语句的常见的四个组成部分
- 循环变量的初始化
- 循环条件部分
- 循环体部分
- 循环变量的更新
循环语句分类
- while 循环
- do/while 循环
- for 循环
for语句
一般用于循环次数是固定的
/* 表达式1 表达式2 表达式3
for (循环变量的初始化; 循环条件部分; 循环变量的更新) {
循环体部分
}*/
执行过程
首先计算表达式1,接着执行表达式2,若表达式2的值 = true,则执行循环语句, 接着计算表达式3,再判断表达式2的值;依此重复下去,直到表达式2的值=false.
while 语句
一般用于循环次数是未知的
while (逻辑表达式) {
}
执行过程
先判断逻辑表达式的值。若为true.则执行其后面的语句,然后再次判断条件并反复执行,直到条件不成立为止
do … while;语句
do {
}while(逻辑表达式);
执行过程
先执行语句,再判断逻辑表达式的值,若为true,再执行语句,否则结束循环。
关于for循环和while循环的一道面试题
while (true) {} //死循环1
for(;;) {} //死循环2
相信大家可以看出这俩个语句都是死循环,那么这俩个死循环有什么区别?
就while(true)来讲它在循环条件中引入了一个变量,每次循环时都
会进行一次判断
而for(;;)中没有循环条件,就是无条件的循环,可以不用进行判断,效率 较高.
break & continue
break 语句用于终止某个语句块的执行。用在循环语句体中,可以强行退出循环
continue 语句用在循环语句体中,用于终止某次循环过程,跳过循环体中 continue 语句下面未执行的循环,开始下一次循环过程