控制语句
控制语句: 把语句组成能完成一定功能的小逻辑模块。它分为三类: 顺序,选择和循环。
-顺序结构: 代表先执行a,再执行b的逻辑。
-条件判断结构: 代表如果…则…
-循环结构,代表如果…则重复执行…
条件判断结构
单分支选择结构
结构:if(布尔表达式){语句块}
新手雷区:
–如果if语句不写{},则只能作用于后面的第一条语句。
–强烈建议,任何时候都写上{},即使语句只有一句话!
if-else双分支结构
结构:if(布尔表达式){语句块1}else{语句块2}
if-else if -else多分支
结构:
if(布尔表达式1){语句块1}
else-if(布尔表达式2){语句表达式2}
else-if(布尔表达式n){语句表达式n}
else{执行语句n+1}
switch多分支语句(多值情况)
结构:
switch(表达式){
case 值1:
语句块1;
[break]
case 值2:
语句块2;
[break]
case 值3:
语句块3;
[break]
case 值n:
语句块n;
[break]
[default:
默认语句块]
}
Scanner scanner=new Scanner(System.in);
String computer =scanner.nextLine();
switch (computer){
case "联想":
System.out.println("联想");
case "苹果":
System.out.println("苹果");
case "华为":
System.out.println("华为");
default:
System.out.println("其他");
注意:
switch会根据表达式的值从相匹配的case标签处开始执行,一直执行到break处或者
是switch的末尾。如果表达式的值和任意的case的值都匹配不上,则进入default语句。
循环语句
while循环
结构:
while(布尔表达式){
循环体;
}
注意:
1.在循环刚开始时,会计算一次"布尔表达式"的值,若条件为真,执行循环体。而对于后来每一次额外的循环,都会开始前重新计算一次。
2.语句中应有使循环趋向于结束的语句,否则会出现无限循环-“死”循环。
for循环——do-while循环
for循环
结构:
for(初始化表达式;布尔表达式;迭代因子){
循环体;
}
注意:
for循环在执行条件判断后,先执行的循环体部分,再执行步进。
do-while循环
结构:
do{循环体;}
while(布尔表达式)
注意:
do-while循环结构会先执行循环体,然后再判断布尔表达式的值,若条件为真就停止返回执行,反之就继续返回执行。
嵌套循环
在循环体语句内部,再写上一个或者多个循环,称为嵌套循环。一般工作中常见的就是两层。
for (int m = 1 ; m < 10 ; m++){
for (int i = 1; i <10 ; i++) {
if (m==i-1){
break;
}else {
System.out.print(i+"*"+m+"="+m*i+"\t");
}
}
System.out.println();
}
break和continue语句
1.break用于强行退出整个循环
2.continue用于结束本次循环,继续下一次
3."标签"是指后面跟一个冒号的标识符,比如:“label”。对于Java来说唯一用到标签的地方是在循环语句之前。
4."goto有害"论中,最有问题的就是标签,而非goto,随着标签在一个程序里数量的增多,产生错误的机会也越来越多。但Java标签不会造成这方面的问题,因为他们的活动场所被限死,不可通过特别的方式到处传递程序的控制权。
// 控制前台循环跳转(打印101-150之间所有的质数)
outer:
for (int i = 101; i <150 ; i++) {
for (int j = 2; j <i/2 ; j++) {
if (i%j==0){
continue outer;
}
}
System.out.println(i+" ");
}