JAVA基础(四)------流程控制语句

时间:2022-09-08 16:51:20
if语句
if语句(单一条件)
语法结构:

JAVA基础(四)------流程控制语句

int x=0;
if(x==1){
System.out.println(“x的值为1”);
}
System.out.println(“x的值为”+x);

        条件表达式可以是任何一种逻辑表达式
如果表达式值为true,则执行花括号的内容后,再执行后面的语句
如果表达式值为false,则直接执行后面的语句

JAVA基础(四)------流程控制语句

        如果执行语句块中只有一条语句,则可以省略大括号(建议不省略)
if-else语句(二选一)
语法结构:

JAVA基础(四)------流程控制语句

int x=2;
if(x<2){
x++;
}else{
x–;
}
System.out.println(“x=”+x);

        如果表达式的值为true,执行语句块1,否则执行语句块2

JAVA基础(四)------流程控制语句

        if-else语句可以改写成三元运算符表达式,即变量=表达式?语句1:语句2;

int x=2;
x= x<2 ? ++x;–x;//注意这里为什么用++x、–x而不是x++、x–
System.out.println(“x=”+x);

    if-else if-else语句(多选一)
语法结构:

JAVA基础(四)------流程控制语句

int x=88;
if(x<60){
System.out.println(“成绩不合格”);
}else if(x>=85){
System.out.println(“成绩优秀”);
}else{
System.out.println(“成绩良好”);
}

        执行流程:

JAVA基础(四)------流程控制语句

switch语句
语法结构:

JAVA基础(四)------流程控制语句

int n=2;
int result;
switch(n+1){
case 1:System.out.println(“Block A”);result = n;break;
case 2:System.out.println(“Block B”);result = n*n;break;3小时
case 3:System.out.println(“Block C”);result = n*n*n;break;
default:result=0;
}
System.out.println(“result=”+result);

    表达式的值只可以接受int、byte、char、short型,不接受其他类型的值
不允许有重复的case取值
switch一旦碰到第一次case匹配,程序就会跳转到这个标签位置,开始顺序执行以后所有的程序代码,而不管后面的case条件是否匹配,直到碰到break语句为止
while循环
语法结构:

JAVA基础(四)------流程控制语句

int x=1;
while(x<3){
System.out.println(“x=”+x);
x++;
}

    执行流程:

JAVA基础(四)------流程控制语句

do-while循环
语法结构:

JAVA基础(四)------流程控制语句

int x=3;
do{
System.out.println(“x=”+x);
x++;
}while(x<3);

    执行流程:

JAVA基础(四)------流程控制语句

for循环
语法结构:

JAVA基础(四)------流程控制语句

for(int x=1;x<3;x++){
System.out.println(“x=”+x);
}

    执行流程:

JAVA基础(四)------流程控制语句

死循环:
循环的条件表达式永远为true时,循环成为死循环

for(int x=1;;x++){
System.out.println(“x=”+x);
}

while(true){
System.out.println(“x=”+x);
}

嵌套循环:
循环的执行语句块中包含循环即构成嵌套循环

for(int i=1;i<=9;i++){
for(int n=1;n<=i;n++){
System.out.print(n+”X”+i+”=”+n*i+” “);
}
System.out.println();
}

循环的中断
在循环语句块中添加break或continue语句可以实现提前中断循环
break语句用于终止某个语句块的执行,用在循环语句体重,可以强行退出循环
“break;”语句:可以出现在while、do...while、for、switch语句体中
“break label”语句:可以出现在任何语句体中

int i,sum=0;
for(i=1;i<101;i++)
sum+=i;
if(sum>=666){
break;
}
}
System.out.println(“从1到”+i+”的和为sum”);

    continue语句用在循环语句体中,用于终止某次循环过程,跳过循环体中continue语句下未执行的循环,开始下一次循环过程
“continue;”语句:只能出现在循环语句while、do...while、for中

for(int i=1;i<50;i++){
if(i%2==0){
continue;
}
System.out.println(i+” “);
}