if...else
/switch
顺序结构只能顺序执行,不能进行判断和选择,因此需要分支结构。
Java有两种分支结构:
if
语句switch
语句if
语句一个if
语句包含一个布尔表达式和一条或多条语句。
语法
if
语句的用语法如下:
if(布尔表达式)
{
//如果布尔表达式为true将执行的语句
}
如果布尔表达式的值为true
,则执行if
语句中的代码块。否则执行if
语句块后面的代码。
public class Test {
public static void main(String args[]){
int x = 10;
if( x < 20 ){
System.out.print("这是 if 语句");
}
}
}
以上代码编译运行结果如下:
这是 if 语句
if
语句后面可以跟else
语句,当if
语句的布尔表达式值为false
时,else
语句块会被执行。
语法
if…else
的用法如下:
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为false
}
实例
public class Test {
public static void main(String args[]){
int x = 30;
if( x < 20 ){
System.out.print("这是 if 语句");
}else{
System.out.print("这是 else 语句");
}
}
}
以上代码编译运行结果如下:
这是 else 语句
if...else if...else
语句if
语句后面可以跟elseif…else
语句,这种语句可以检测到多种可能的情况。
使用if,else if,else
语句的时候,需要注意下面几点:
if
语句至多有1个else
语句,else
语句在所有的elseif
语句之后。
if
语句可以有若干个elseif
语句,它们必须在else
语句之前。
一旦其中一个else if
语句检测为true
,其他的else if
以及else
语句都将跳过执行。
语法
if...else
语法格式如下:
if(布尔表达式 1){
//如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
//如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
//如果布尔表达式 3的值为true执行代码
}else {
//如果以上布尔表达式都不为true执行代码
}
实例
public class Test {
public static void main(String args[]){
int x = 30;
if( x == 10 ){
System.out.print("Value of X is 10");
}else if( x == 20 ){
System.out.print("Value of X is 20");
}else if( x == 30 ){
System.out.print("Value of X is 30");
}else{
System.out.print("这是 else 语句");
}
}
}
以上代码编译运行结果如下:
Value of X is 30
使用嵌套的if-else
语句是合法的。也就是说你可以在另一个if
或者elseif
语句中使用if
或者elseif
语句。
语法
嵌套的if…else
语法格式如下:
if(布尔表达式 1){
////如果布尔表达式 1的值为true执行代码
if(布尔表达式 2){
////如果布尔表达式 2的值为true执行代码
}
}
你可以像 if
语句一样嵌套 else if...else
。
实例
public class Test {
public static void main(String args[]){
int x = 30;
int y = 10;
if( x == 30 ){
if( y == 10 ){
System.out.print("X = 30 and Y = 10");
}
}
}
}
以上代码编译运行结果如下:
X = 30 and Y = 10
switch
语句switch
语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
语法
switch
语法格式如下:
switch(expression){
case value :
//语句
break; //可选
case value :
//语句
break; //可选
//你可以有任意数量的case语句
default : //可选
//语句
}
switch
语句有如下规则:
switch
语句中的变量类型只能为byte
、short
、int
或者char
。switch
语句可以拥有多个case
语句。每个case
后面跟一个要比较的值和冒号。case
语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。case
语句的值相等时,那么case
语句之后的语句开始执行,直到break
语句出现才会跳出switch
语句。break
语句时,switch
语句终止。程序跳转到switch
语句后面的语句执行。case
语句不必须要包含break
语句。如果没有break
语句出现,程序会继续执行下一条case
语句,直到出现break
语句。switch
语句可以包含一个default
分支,该分支必须是switch
语句的最后一个分支。default
在没有case
语句的值和变量值相等的时候执行。default
分支不需要break
语句。实例
public class Test {
public static void main(String args[]){
//char grade = args[0].charAt(0);
char grade = 'C';
switch(grade)
{
case 'A' :
System.out.println("优秀");
break;
case 'B' :
case 'C' :
System.out.println("良好");
break;
case 'D' :
System.out.println("及格");
case 'F' :
System.out.println("你需要继续努力");
break;
default :
System.out.println("无效等级");
}
System.out.println("你的等级是 " + grade);
}
}
以上代码编译运行结果如下:
良好
你的等级是 C
本文转自:http://codingdict.com/article/2341
原文:https://www.cnblogs.com/bczd/p/11968814.html