- 顺次(序)结构
- 分支结构
if...else...
if...else if ... else if ... else ...
switch () {
case 值:
……
}
1) if...else...
①语法结构
if (条件) {
代码块1;
}
else {
代码块2;
}
②示例-1:
if (冰箱门开了) {
2. 把大象装进去;
3. 关门
}
else {
不装了,休息
}
②示例-2:
如果层次关系(嵌套)超过3层,不行,怎么改?
头重脚轻,不行?
if (冰箱门开了) {
if (空间够) {
2. 把大象装进去;
if(门能关上) {
3. 关门
}
else {
不装了,休息
}
}
else {
不装了,休息
}
}
else {
不装了,休息
}
2) if ... else if... else
如果星期一
上午上课、下午上课
如果星期二
上午上课、下午上课
如果星期三
上午上课
如果星期四
上午上课、下午上课
如果星期五
上午上课
//此处使用if...else if...else层次嵌套少,更好
if (weekday == 1) {
//TODO:打印“上午上课、下午上课”
}
else if (weekday == 2) {
//TODO:打印“上午上课、下午上课”
}
else if (weekday == 3) {
//TODO:打印“上午上课”
}
……
3)switch
switch (变量) {
case 值1:// 变量 == 值1
//代码块1
break;
case 值2:
//代码块2
break;
……
default:
//上面的值都不符合,执行此处的代码块
}
//weekday=4
switch (weekday) {
case 1:
//TODO:打印“上午上课、下午上课”
break;
case 2:
//TODO:打印“上午上课、下午上课”
break;
case 3:
//TODO:打印“上午上课"
break;
case 4:
//TODO:打印“上午上课、下午上课”
break;
case 5:
//TODO:打印“上午上课"
break;
default:
//TODO:打印“美好周末”
}
【优化】
//weekday=1
switch (weekday) {
case 1:
case 2:
case 4:
//TODO:打印“上午上课、下午上课"
break;
case 3:
case 5:
//TODO:打印“上午上课"
break;
default:
//TODO:打印“美好周末”
}
- 循环结构
for ( 初始条件(从1个) ; 结束条件(到第500个) ;【步长】怎么变化的(装1,2,3……) ) {
//循环体(装1个大象)
}
while(循环条件)
do{
先执行一边
}while(循环条件){
}
***~~特殊控制流程~~ ***:break、continue
Lable(goto) “了解”
break 使用Lable跳出N层循环
a:
for (i = 0; i < 5; i++) {
for (j = 0; j < 5; j++) {
if (i == 3) {
break a;
}
System.out.println (i + "," + j);
}
}
/*
0,0~4
1,0~4
2,0~4
4,0~4
*/