十四、流程控制语句
来源:互联网 发布:windows 2012 r2 编辑:程序博客网 时间:2024/05/18 12:04
1、if嵌套
public class HelloWorld {
public static void main(String[] args) {
int score = 94;
String sex = “女”;
if(score>80){
if(sex==”女”){
System.out.println(“进入女子组决赛”);
}else{
System.out.println(“进入男子组决赛”);
}
}else{
System.out.println(“没有进入决赛”);
}
}
}
运行结果为: 进入女子组决赛
2、switch
<1>switch 后面小括号中表达式的值必须是整型或字符型
<2>case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2
<3>case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续执行下一个的 case 块的内容,直到遇到 break 语句或者 switch 语句块结束.
<4>可以把功能相同的 case 语句合并起来,如
case1:case2:System.out.println("abc");
<5> default 块可以出现在任意位置,也可以省略
public class HelloWorld { public static void main(String[] args) { char today='日'; switch(today){ case '一': case '三': case'五': System.out.println("早餐吃包子");break; case '二': case '四': case '六': System.out.println("早餐吃油条");break; case '日': System.out.println("吃主席套餐"); } }}
如果
char today='日'; switch(today){ case '日': System.out.println("吃主席套餐");//后面没有加break,则会继续执行下面 case '一': case '三': case'五': System.out.println("早餐吃包子");break; case '二': case '四': case '六': System.out.println("早餐吃油条"); }
运行结果:吃主席套餐
早餐吃包子
3、while :
while(判断条件){
循环操作
}
执行过程:
< 1 >、 判断 while 后面的条件是否成立( true / false )
< 2 >、 当条件成立时,执行循环内的操作代码 ,然后重复执行< 1 >、< 2 >, 直到循环条件不成立为止
特点:先判断,后执行
例子:顺序输出1–5这5个数字
int i = 1; // 代表 1 - 5 之间的数字 while (i<=5) { System.out.println(i); i++; }
4、do…while
do{
循环操作
}while(判断操作);
执行过程:
<1>、 先执行一遍循环操作,然后判断循环条件是否成立
<2>、 如果条件成立,继续执行< 1 > 、< 2 >,直到循环条件不成立为止
特点: 先执行,后判断
由此可见,do…while 语句保证循环至少被执行一次!
5、for循环
for(循环变量初始化;循环条件;循环变量变化){
循环操作;
}
1、 for 关键字后面括号中的三个表达式必须用 “;” 隔开,三个表达式都可以省略,但 “;” 不能省略。
a. 省略“循环变量初始化”,可以在 for 语句之前由赋值语句进行变量初始化操作,如:
int i=0;for(;i<10;i++){System.out.println("HelloWorld");}
b. 省略“循环条件”,可能会造成循环将一直执行下去,也就是我们常说的“死循环”现象,如:
for(int i=0;;i++){System.out.println("HelloWorld");}在编程过程中要避免“死循环”的出现,因此,对于上面的代码可以在循环体中使用 break 强制跳出循环。
c. 省略“循环变量变化”,可以在循环体中进行循环变量的变化,如:
for(int i=1,j=5;i<5;i++,j--){System.out.println(i+"+"+j+"="+(i+j));}
输出:1+5=6
2+4=6
3+3=6
4+2=6
5+1=6
3、 循环条件部分可以使用逻辑运算符组合的表达式,表示复杂判断条件,但一定注意运算的优先级,如:
for(int i=1;i<10&&i!=5;i++)
int sum = 0; // 保存不能被3整除的数之和 // 循环变量 i 初始值为 1 ,每执行一次对变量加 1,只要小于等于 100 就重复执行循环 for (int i = 1;i<=100;i++ ) { if (i % 3 != 0) { sum = sum + i; // 累加求和 } } System.out.println("1到100之间不能被3整除的数之和为:" + sum); 运行结果为: 1到100之间不能被3整除的数之和为:3367
6、break
break 语句退出指定的循环,直接执行循环后面的代码。
int sum=0; for(int i=1;i<=10;i++) { sum=sum+i; if(sum>20){ System.out.println("当前累加值为"+sum);break;} }
运行结果为: 当前的累加值为:21
7、continue 的作用是跳过循环体中剩余的语句执行下一次循环。
int sum=0; for(int i=1;i<=10;i++){ if(i%2!=0){ continue; }else sum=sum+i; } System.out.print("1到10之间的所有偶数的和为:" + sum);
运行结果为: 1到10之间的所有偶数的和为:30
8、多重循环
System.out.println(“打印直角三角形”);
for (int i = 1;i<=3;i++) {
for (int j = 1;j<=i;j++) {
System.out.print(“*”);
}
System.out.println();
}
9、练习
int num = 999; int count = 0; do{ count++; num=num/10; }while(num>0); System.out.println("它是一个"+count+"位数");
或者
int num = 999; int count = 0; for(;;){ count++; num = num / 10; if(num == 0) break; } System.out.println("它是个"+count+"位的数!");
都是输出:它是个3位的数
- 十四、流程控制语句
- 流程语句控制语句
- SQL流程控制语句
- 控制流程语句
- Oracle 流程控制语句
- 03 流程控制语句
- 流程控制语句
- SQL流程控制语句
- C#流程控制语句
- Java流程控制语句
- 流程控制语句
- 流程控制语句
- Shell流程控制语句
- java流程控制语句
- 流程控制语句
- C#流程控制语句
- ruby流程控制语句
- java流程控制语句
- SELECT查询命令的使用
- Java+opencv3.2.0之环境配置
- 软件测试之使用jmeter进行压力测试
- 2.3 Spring的核心机制:依赖注入
- 串口通讯demo-serial port communication 供参考
- 十四、流程控制语句
- nodejs建站-回复评论
- thinkphp框架中“关联操作”的完整定义详解
- PHP5和7中的zval全介绍,内存管理,类型,引用计数(2)
- 学习笔记之——初识Kotlin
- Java中的锁机制 synchronized & 偏向锁 & 轻量级锁 & 重量级锁 & 各自优缺点及场景
- MFC View类对话框类之间指针的相互获取
- method swizzling使用一例
- java捕获到异常以后,后面的代码还会执行吗?