##
Java选择结构:if选择结构和switch选择结构
if单选泽结构
-
在需要判断一个东西是否可行后才执行时,可以使用if来判断
-
语法:
if(布尔表达式){ //语句块,布尔表达式为true时执行 }
-
举例:
package choose; import java.util.Scanner; public class ChooseIf01 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入内容:"); //声明s用于接收输入内容 String s=scanner.nextLine(); //if单选泽结构 if(s.equals("Hello")){ System.out.println(s); } System.out.println("end"); scanner.close(); } }
if双选择结构
-
在需要判断一个东西是否可行后,如果可行执行A情况,如果不可行执行B情况,可以使用if双选择结构来判断
-
语法:
if(布尔表达式){ //语句块,布尔表达式为true时执行A情况 }else{ //语句块,布尔表达式为false时执B情况 }
-
举例:
package choose; import java.util.Scanner; public class ChooseIf02 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入考试成绩:"); Integer i=scanner.nextInt(); //if双选泽结构 if (i>=60){ System.out.println("成绩及格"); }else { System.out.println("成绩不及格"); } scanner.close(); } }
if多选择结构
-
在需要判断一个事件有多重可能性时使用
-
语法:
if(布尔表达式1){ //语句块,布尔表达式1为true时执行 }else if(布尔表达式2){ //语句块,布尔表达式2为true时执行 }else if(布尔表达式3){ //语句块,布尔表达式3为true时执行 }else{ //语句块,以上都不成立时执行 }
-
举例:
package choose; import java.util.Scanner; public class ChooseIf03 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入考试成绩:"); Integer score=scanner.nextInt(); //if多选泽结构 if(score>=90&&score<=100){ System.out.println("成绩为优"); }else if(score>=80&&score<90){ System.out.println("成绩为良"); }else if(score>=70&&score>80){ System.out.println("成绩为中"); }else if(score>=60&&score<70){ System.out.println("成绩为及格"); }else if(score<60){ System.out.println("成绩不及格"); }else { System.out.println("输入有误"); } scanner.close(); } }
嵌套的if结构
-
在一个if选择结构中可以继续嵌套if选择结构
-
语法:
if(布尔表达式1){ //语句块,布尔表达式1为true时执行 if(布尔表达式2){ //语句块,布尔表达式2为true时执行 }else{ //语句块,布尔表达式2为false时执行 } }else{ //语句块,布尔表达式1为false时执行 }
-
举例:
package choose; import java.util.Scanner; public class ChooseIf04 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); //寻找一个数,在1-100之间 System.out.println("请输入一个数字:"); Integer num=scanner.nextInt(); //if嵌套结构 if(num>50){ System.out.println("数字在50-100之间"); if(num>80){ System.out.println("数字在80-100之间"); }else { System.out.println("数字在50-80之间"); } }else { System.out.println("数字在1-50之间"); if(num<20){ System.out.println("数字在1-20之间"); }else { System.out.println("数字在20-50之间"); } } scanner.close(); } }
switch选择结构
-
switch case语句属于一种多选择结构
-
switch case语句判断一个变量与一系列值中某个值是否相等,每个值为一个分支
-
语法:
switch(表达式){ case value1: //语句块 break;//可选项 case value2: //语句块 break;//可选项 case value3: //语句块 break;//可选项 default://可选项 //语句块 }
-
switch语句中的变量类型可以是:
-
byte、short、int、char
-
也可以是String(从Java SE 7开始)
-
-
举例:
package choose; import java.util.Scanner; public class ChooseIf05 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入1-5中的数字:"); Integer i=scanner.nextInt(); //变量i为int类型 switch (i){ case 1: System.out.println("您输入的是1"); break; case 2: System.out.println("您输入的是2"); break; case 3: System.out.println("您输入的是3"); break; case 4: System.out.println("您输入的是4"); break; case 5: System.out.println("您输入的是5"); break; } scanner.close(); } }
package choose; import java.util.Scanner; public class ChooseIf06 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入名字:"); String name=scanner.nextLine(); //变量name为String类型 switch (name){ case "李白": System.out.println("诗仙"); break; case "杜甫": System.out.println("诗圣"); break; case "白居易": System.out.println("诗魔"); break; } scanner.close(); } }