java输入年份和月份,输出天数


import java.util.*;

public class Demo {
    public static void main(String[] args){
        int days = 0;
        Scanner sc = new Scanner(System.in);
        System.out.print("输入年份: ");
        int year = sc.nextInt();
        System.out.print("输入月份: ");
        int month = sc.nextInt();

        switch(month){
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                days=31;
                break;
            case 4:
            case 6:
            case 9:
            case 11:
                days=30;
                break;
            case 2:
                if(year%4==0 && year%100!=0 || year%400==0)
                    days=29;
                else
                    days=28;
                break;
                default:
            System.out.println("月份输入错误!");
            System.exit(0);

        }
        System.out.printf("天数:%d
", days);
    }
}

1.当通过new Scanner(System.in)创建一个Scanner,控制台会一直
待输入,直到敲回车键结束,把所输入的内容传给Scanner,作为扫
对象。如果要获取输入的内容,则只需要调用Scanner的nextLine()方法即可。

2.switch 语句由一个控制表达式和多个case标签组成。

switch 控制表达式支持的类型有byte、short、char、int、enum(Java 5)、String(Java 7)。

switch-case语句完全可以与if-else语句互转,但通常来说,switch-case语句执行效率要高。

default在当前switch找不到匹配的case时执行。default并不是必须的。

一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break。

原文地址:https://www.cnblogs.com/fanren224/p/8457230.html