1. 程式人生 > >Java判斷是否為閏年

Java判斷是否為閏年

題目:

判斷一個輸入的整數是否為閏年?

1.需要對輸入的資料型別進行驗證

2.支援多次輸入和結束符號判斷,例如輸入q代表退出程式。

分析:

閏年的判斷規則如下:(1)若某個年份能被4整除但不能被100整除,則是閏年(2)若某個年份能被400整除,則也是閏年。

實現:

package com.dylan.practice.interview;

import java.util.Scanner;

/**
 * 判斷閏年
 *
 * @author xusucheng
 * @create 2018-02-27
 **/
public class LeapYearTest {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        String input = "";
        int year;
        System.out.println("請輸入一個年份:");
        while (true) {
            input = sc.next();
            if("q".equals(input.toLowerCase())){
                break;
            }
            try {
                year = Integer.parseInt(input);
                if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
                    System.out.println(year + "是閏年!");
                } else {
                    System.out.println(year + "不是閏年!");
                }
            } catch (NumberFormatException e) {
                System.out.println("請輸入一個正整數!");
            }
        }

        System.out.println("程式執行結束!");

    }
}

除錯:

請輸入一個年份:
1
1不是閏年!
123
123不是閏年!
sdf
請輸入一個正整數!
112
112是閏年!
1900
1900不是閏年!
20000
20000是閏年!
q
程式執行結束!