zoukankan      html  css  js  c++  java
  • 章节四、2-Switch语句

    package introduction5;
    
    public class SwitchDemo {
    
        //switch用于固定值的判断,如星期、人的性别
        //if用于判断区间、范围,能够用switch进行判断的,if都能判断,反之则不然
        
        //案列:返回月份天数
        static int numOfDay(int year,int month) {
            int numDay = 0;
            switch (month) {
            case 1:
                numDay = 31;
                //break的作用:如果满足当前条件,就返回numDey的值,跳出switch循环语句,其它的选项都不执行
                break;
            case 2:
                //因为闰年的2月是29天,所以此处需要加if进行判断
                //闰年:
                //能被4整除且不能被100整除或能被400整除,则判断为闰年,输出天数为29天
                if(year%4==0&&year%100!=0||year%400==0) {
                    numDay = 29;
                }
                //否则为平年,天数输出为28天
                else {
                    numDay = 28;
                }
                break;
            case 3:
                numDay = 31;
                break;
            case 4:
                numDay = 30;
                break;
            case 5:
                numDay = 31;
                break;
            case 6:
                numDay = 30;
                break;
            case 7:
                numDay = 31;
                break;
            case 8:
                numDay = 31;
                break;
            case 9:
                numDay = 30;
                break;
            case 10:
                numDay = 31;
                break;
            case 11:
                numDay = 30;
                break;
            case 12:
                numDay = 31;
                break;
            /*default:相对于if语句中的else,如果输入的数字不在1~12之间(以上所有条件都不满足),
             * 那么就执行default,输出“无效的月份”。
             */
            default:
            {
                System.out.println("无效的月份");
                break;
            }
            }
            return numDay;
        }
        public static void main(String[] args) {
        int numDey = numOfDay(78, 30);
        //如果给定的月份不在1~12之前,那么打印的结果为“0”
        System.out.println("给定年和月里面的天数是:"+numDey);
        }
    }

    自己练习:

    package introduction;
    
    import java.time.temporal.WeekFields;
    
    public class Demo {
        public static String OfWeek(int number) {
            /*
             * 自己练习时错误:
             * 1、忘记在每个case后面加break关键字。
             * 2、不知道怎么在主方法中调用写完的程序,
             * 自己调用的方式是先实例化再调用,实际有更简单的方式去验证调用
             * 3、default部分需要用大括号括起来
             */
            String week = "";
            switch(number) {
            case 1:
                week = "星期一:Monday";
                break;
            case 2:
                week = "星期二:Tuesday";
                break;
            case 3:
                week = "星期三:Wednesday";
                break;
            case 4:
                week = "星期四:Thursday";
                break;
            case 5:
                week = "星期五:Friday";
                break;
            case 6:
                week = "星期六:Saturday";
                break;
            case 7:
                week = "星期日:Sunday";
                break;
            default:
            {
                System.out.print("请输入1~7之间的有效数字,");
                break;
            }
            }
            return week;
        }
        
        public static void main(String[] args) {
            String week = OfWeek(9);
            System.out.println("给定的数字代表:"+week);
        }
    }
  • 相关阅读:
    BZOJ3752 : Hack
    XIV Open Cup named after E.V. Pankratiev. GP of SPb
    XIII Open Cup named after E.V. Pankratiev. GP of Ukraine
    BZOJ2087 : [Poi2010]Sheep
    BZOJ2080 : [Poi2010]Railway
    BZOJ2082 : [Poi2010]Divine divisor
    Moscow Pre-Finals Workshop 2016. National Taiwan U Selection
    XIII Open Cup named after E.V. Pankratiev. GP of Asia and South Caucasus
    XIII Open Cup named after E.V. Pankratiev. GP of Azov Sea
    XIII Open Cup named after E.V. Pankratiev. GP of SPb
  • 原文地址:https://www.cnblogs.com/luohuasheng/p/9522020.html
Copyright © 2011-2022 走看看