Java-if选择结构和switc选择结构

本文最后更新于2022.04.08-14:26,某些文章具有时效性,若有错误或已失效,请在下方留言或联系涛哥

if选择结构

if(条件){
    //代码块
}

if-else选择结构

if(条件){
    //代码块1
}else{
   //代码块2
}

if-else也可以用三元运算符表示

条件?代码块1:代码块2

多重if选择结构

if(条件1){
    //代码块1
}else if(条件2){
    //代码块2
}else{
   //代码块3
} 
 ps:else-if可以有多个

 

嵌套if选择结构

if(条件1){
   if(条件2){
    //代码块1
  }else{
   //代码块2
  }
}else{
   //代码块3
}

if结构书写规范

  1. 为了使if结构更加清晰,避免执行错误,应该把每个if或else包含的代码块都用大括号括起来
  2. 相匹配的一对if或else应该左对齐
  3. 内层的if结构相对于外层的if结构要有一个缩进

switch选择结构

switch(表达式){
     case 常量1:
            语句;
            break;
     case 常量2:
            语句;
            break;
.     .......
     default:
           语句;
}

if-else和switch例子

package airplane;
import java.util.Scanner;
public class Airplane {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		System.out.println("机票预订系统");
		int yjp = 4000;
		System.out.println("机票原价"+yjp);
		System.out.print("请输入月份:");
		int month = sc.nextInt();
		if (month >= 5 && month <= 10){
			System.out.println("5至10月为旺季");
			System.out.println("1.旺季:头等舱9折");
			System.out.println("2.旺季:经济舱7.5折");
			System.out.print("请输入机舱类型:");
			int cx1 = sc.nextInt();
			switch (cx1){
			 case 1:
				 double xjp = yjp * 0.9;
				 System.out.println("本次机票价格是:"+xjp);
				 break;
			 case 2:
				 double xjp1 = yjp * 0.75;
				 System.out.println("本次机票价格是:"+xjp1);
				 break;
			}
		}else{
			System.out.println("其他情况为淡季");
			System.out.println("1.淡季:头等舱6折");
			System.out.println("2.淡季:经济舱3折");
			System.out.println("请输入机舱类型:");	
			int  cx2 = sc.nextInt();
			switch (cx2){
			 case 1:
				 double xjp2 = yjp * 0.6;
				 System.out.println("本次机票价格是:"+xjp2);
				 break;
			 case 2:
				 double xjp3 = yjp * 0.3;
				 System.out.println("本次机票价格是:"+xjp3);
				 break;
			}
		}
		
	
	}

}

switch选择结构和多重if选择结构的相同和不同

  • 相同点:都是用来处理分支条件的结构
  • 不同点:
    • switch:只能处理等值条件判断的情况,而且条件必须是整型变量或字符型变量
    • 多重if:没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况
    阅读剩余
    THE END