ホームページ  >  記事  >  Java  >  特定の年の特定の月の日数を計算する Java 実装

特定の年の特定の月の日数を計算する Java 実装

王林
王林転載
2020-05-15 17:55:165332ブラウズ

特定の年の特定の月の日数を計算する Java 実装

ある年のある月の日数を計算する場合、平年の閏年に注意する必要があります。

分析: うるう年の具体的な判定方法は、4年に1度のうるう年、100年にうるう年がない、400年にうるう年の判定条件によって異なります。この月の日数を計算するには、大の月と小の月に分け、特別な月を 2 月に分けます。

(推奨ビデオ チュートリアル: java ビデオ )

特定のコード:

import java.util.Scanner;
import java.text.MessageFormat;
public class Test02 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入一个4位数的年份(1900~2099):");
        int year = input.nextInt();

        if(year >=1900 && year <= 2099){
            System.out.println("请输入月份(1~12):");
            int month = input.nextInt();
            if(month >=1 && month <= 12){
             // 计算该年该月的天数
             // 大月和小月,特殊月份2月
                int day=31;
                switch(month){
                    case 4: case 6: case 9: case 11:
                        day=30;
                        break;
                    case 2:
                        // 判定条件:四年一闰 && 百年不闰 || 400年再闰
                        boolean isLeapYear=(year%4==0 && year%100!=0) || year%400==0;
                        //三元运算符判定
                        day= isLeapYear ? 29 : 28;
                        break;
                }
                String info = MessageFormat.format("{0}年{1}月{2}天",year,month,day);
                System.out.println(info);
            }else{
                System.out.println("请输入正确的月份");
            }
        }else{
            System.out.println("请输入一个1900~2099之间的年份");
        }
    }
}

推奨チュートリアル: Java 開発入門

以上が特定の年の特定の月の日数を計算する Java 実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。