码迷,mamicode.com
首页 > 其他好文 > 详细

switch语句和switch-case与if-else之间的转换

时间:2018-12-06 01:34:47      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:other   col   ann   case语句   day   scan   str   条件   system.in   

switch语句
格式:
switch(变量){
case 常量1:
语句1;
break;
case 常量2:
语句2;
break;
......
default:
语句;
break;
}
特点:1.根据变量的值,选择相应的case去判断,一旦满足case相应语句,如果没有break或者已经到结尾,会
继续执行其下的case语句
2.default是可选的,而且位置灵活
3.变量可以是:char byte short int String 枚举,其余的都不能用在switch语句中
4.case条件:其中条件只能写值,不能写范围
练习:输入一个月份,使输出的是季节

import  java.util.Scanner;
public class V{
    public static void main(String[] args){
        String s="summer";
        switch(s){
            case "spring":
                System.out.println("春天");
                break;
            case "summer":
                System.out.println("夏天");
                break;
            case "autumn":
                System.out.println("秋天");
                break;
            case "winter":
                System.out.println("冬天");
                break;
            default:
                System.out.println("输入有误");
                break;
        }
        }
    }

技术分享图片

switch-case与if-else之间的转换
1.当多个case语句处理的语句块一致时,可以统一来书写
格式:
switch(变量){
case 常量1:
case 常量2:
case 常量3:
case 常量4:
......
System.out.println();
break;
//这些常量所输出的结果一样
case 常量5:
case 常量6:
case 常量7:
case 常量8:
......
System.out.println();
break;
defaul:
System.out.println();
break;
//这些常量所输出的结果一样
}
2.在一定情况下switch-case与if-else之间可以相互转化
3.if-else作用的范围比switch-case作用范围要大,但是当switch-case和if-else都可以用的情况下
推荐使用switch-case

技术分享图片

 

import  java.util.Scanner;
public class V{
    public static void main(String[] args){
        char ch=‘a‘;
        switch(ch){
            case  ‘a‘:
                System.out.println("A");
                break;
            case  ‘b‘:
                System.out.println("B");
                break;
            case  ‘c‘:
                System.out.println("C");
                break;
            case  ‘d‘:
                System.out.println("D");
                break;
            case  ‘e‘:
                System.out.println("E");
                break;
            default:
                System.out.println("other");
                break;
        }
public class V{
    public static void main(String[] args){
        int score=70;
        switch(score/10){
            case 10:
                System.out.println("及格");
                break;
            case 9:
                System.out.println("及格");
                break;
            case 8:
                System.out.println("及格");
                break;
            case 7:
                System.out.println("及格");
                break;
            case 6:
                System.out.println("及格");
                break;
            case 5:
                System.out.println("不及格");
                break;
            case 4:
                System.out.println("不及格");
                break;
            case 3:
                System.out.println("不及格");
                break;
            case 2:
                System.out.println("不及格");
                break;
            case 1:
                System.out.println("不及格");
                break;
            default:
                System.out.println("输入错误");
                break;
        }
        }
    }
import java.util.Scanner;

public class V{
    public static void main(String[] args){
        System.out.println("输入月份");
        Scanner s=new Scanner(System.in);
        int month=s.nextInt();
        switch(month){
            case 1:
            case 2:
            case 3:
                System.out.println("春天");
                break;
            case 4:
            case 5:
            case 6:
                System.out.println("夏天");
                break;
            case 7:
            case 8:
            case 9:
                System.out.println("秋天");
                break;
            case 10:
            case 11:
            case 12:
                System.out.println("冬天");
                break;
            default:
                System.out.println("输入错误");
                break;
        }
    }
}
import java.util.Scanner;

public class V{
    public static void main(String[] args){
        Scanner s=new Scanner(System.in);
        System.out.println("输入月份");
        int month=s.nextInt();
        System.out.println("输入日期");
        int day=s.nextInt();
        int sum=0;
        switch(month){
            case 12:
                sum += 30;
            case 11:
                sum += 31;
            case 10:
                sum += 30;
            case 9:
                sum += 31;
            case 8:
                sum += 31;
            case 7:
                sum += 30;
            case 6:
                sum += 31;
            case 5:
                sum += 30;
            case 4:
                sum += 31;
            case 3:
                sum += 28;
            case 2:
                sum += 31;//一月份的天数
            case 1:
                sum += day;

        }
        System.out.println(sum);
    }
}

 

switch语句和switch-case与if-else之间的转换

标签:other   col   ann   case语句   day   scan   str   条件   system.in   

原文地址:https://www.cnblogs.com/KeepCalmAndNeverSayNever/p/10074229.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!