Java中的程序流程控制结构有多种,如:if-else、switch、while、do-while、for、break和continue等。
1、if-else:如果条件表达式为真,那么执行对应的某一语句,语法形式如下:
If (布尔条件式){
需要执行的语句
}
else if(布尔条件式){
需要执行的语句
}
…...
else{
需要执行的语句
}
2、switch:选择性语句,示例代码如下
class Switch{
public static void main(String[] args) {
int x = 5;
switch (x) { //先读case4,6,2,都不成立,然后再读default,但是没有break,会一直向下执行。
//所以此中的结果是,dab
default:
System.out.println("d");
//break;
case 4:
System.out.println("a");
case 6:
System.out.println("b");
break;
case 2:
System.out.println("c");
}
int a=10,b=2;
char ch='/'; //switch的数据类型只能是byte,short,int,char和枚举
switch (ch){
case '-':
System.out.println(a-b);
break;
case '+':
System.out.println(a+b);
break;
case '*':
System.out.println(a*b);
break;
case '/':
System.out.println(a/b);
break;
default:
System.out.println("非法");
break;
}
}
}
switch和if的优劣:
a、switch效率比if高,在判断值不多的情况下应用;
b、当条件为boolean型和区间时,用if语句。
3、while语句:如果某个条件为真,那么就会一直循环执行,每次循环都会判断条件的真假;如果条件为假,循环停止执行,语法形式:
While(布尔条件式){
要进行循环的语句
}
4、do-while语句:先执行循环体,再判断条件,至少执行一次,语法形式:
Do{
执行语句
} while(布尔条件式);
5、for语句:最常见和使用最多的循环语句,对应语法:
For(初始化表达式;循环条件表达式;循环后的操作表达式){
执行语句
}
嵌套for循环打印99乘法表
public class Table99 {
public static void main(String args[]){
System.out.println("=========9*9乘法表(for循环打印)==========");
for(int i=1; i<=9; i++){
for(int j=1; j<=i; j++){
System.out.print(j+"*"+i+"="+i*j+"\t");
}
System.out.println();
}
}
for与while的区别:
a、如果将用于控制循环的增量定义在for语句中,那么该变量只在for语句内有效;for语句执行完毕,该变量在内存中被释放;
b、while定义的变量可以在循环外使用,会占用系统资源;
c、for和while可互换,若需要定义循环增量,for语句更为合适。
6、break和continue
break:满足某个条件时跳出循环,只能应用于选择结构switch和循环loop结构
Continue:只能作用于循环loop结构,结束本次循环,继续下一次循环
注意:
a、这两个语句离开应用范围存在是没有意义的;
b、这个两个语句单独存在时,下面都不可以有语句,因为执行不到;
c、标号的出现,可以让这两个语句作用于指定的范围。