分支语句
if分支语句
- if 概述:在某些情况下,需要当某一条件满足时才执行相应代码,条件不满足则执行其他代码。
- if 四种形式:单分支、双分支、多分支、嵌套if
单分支
if (布尔表达式) {
//布尔表达式为true时需执行的代码;
}
双分支
if (布尔表达式) {
//布尔表达式为true时需执行的代码;
}else {
//布尔表达式为false时需执行的代码;
}
多分支
——多个语句块中只执行一个语句块:
if(布尔表达式1){
//布尔表达式1为true时执行的代码
}else if(布尔表达式2){
//布尔表达式1为false但是布尔表达式2为true时执行的代码
}else if(布尔表达式3){
//布尔表达式1和布尔表达式2为false但是布尔表达式3为true时执行的代码
}else{
//布尔表达式1、布尔表达式2和布尔表达式3均为false时执行的代码
}
嵌套if
——一个分支结构中包含另一个完整分支结构:当有多个条件时分别判断多个条件可以提高程序可读性
if(布尔表达式1){
//布尔表达式1为true时执行的代码
if(布尔表达式2){
//布尔表达式1和布尔表达式2均为true时执行的代码
}else{
//布尔表达式1为true,但布尔表达式2均为false时执行的代码
}
}else {
//布尔表达式1为false时执行的代码
}
- 注意:if分支语句中去掉括号,则对第一行代码有效。
public class IfTest {
public static void main(String[] args) {
int i=3;
if(i==2)
System.out.println("代码1");
System.out.println("代码2");
}
}
- 注意:else不能单独使用。
public class IfTest {
public static void main(String[] args) {
int i=3;
if(i==2)
System.out.println("代码1");
//System.out.println("代码2");//该行代码注释去掉程序能编译吗?
else
System.out.println("代码3");
}
}
switch分支语句
switch分支语句语法:
switch ( 表达式 ) {
case 常量1 :[{]
当表达式的值等于整型常量1时执行的语句;
break;//当一种情况包含其他情况时
[}]
case 常量2 :[{]
当表达式的值等于整型常量2时执行的语句;
break;
[}]
---
default:[{]
当表达式的值不满足任何一个case的值时,执行的语句;
[}]
}
说明:上面中方括号代表可有可无。
int i_2 = 1;
switch(i_2){
case 1:
System.out.println(1);
break;//break用于结束当前switch()语句
case 2:
System.out.println(2);
return;//return用来执行当前方法,即接下来的"out"也不会输出
case 3:
System.out.println(3);
//如果没有break或者return,将会不管接下来的语句是否符合,都会依次执行
default:
System.out.println("default");
break;
}
System.out.println("out");
循环语句
for循环
while循环
do-while循环
比较while和do-while
- while循环和do-while循环的区别:
1.语法不同:
while(循环条件){ do{
先判断,再执行 先执行,再判断
} }while(循环条件)
2.执行过程不同:如果循环条件不满足,while循环一次都不会执行;do-while循环不管任何情况都至少执行一次。
//三种循环语句
//1.for循环
for(int i=1;i<=20;i++){
for(int j=0;j<i;j++)
System.out.print("*");
System.out.println(" ");
}
//2.while循环
int i_3 = 1;
while(i_3<=20){
int j_3 = 0;
while(j_3<i_3){
System.out.print("*");
j_3++;
}
System.out.println(" ");
i_3++;
}
//3.do-while循环
int i_4 = 1;
do{
int j_4 = 0;
do{
System.out.print("*");
j_4++;
}while(j_4<i_4);
System.out.println(" ");
i_4++;
}while(i_4<=20);
这是用三种循环结构输出如下图形的语句
continue,break,return的区别
- continue是只结束当前一层循环,进入下一层循环,可以放在if分支语句中,但该分支语句必须放在loop(循环)语句中
- break是结束循环语句开始接下来的语句,可以放在if分支语句中,但该分支语句必须放在switch或loop(循环)语句中
- return是结束当前方法,可以单独用在分支语句中