Java练习001 - 判断是否是闰年

判断是否是闰年 - Java练习001


用Java语言来判断某一年是否为闰年(leap year)

满足闰年的条件:
1)非整百年份可被4整除,
2)可被400整除,
3)被100整除的不是闰年

package com.benjamin.chapter01;


import java.util.Scanner;


public class Demo001 {
    public static void main(String[] agrs){

        isLeapYear();

        daysCount();
    }

    //判断某一年是否为闰年leap year
    //满足闰年的条件:非整百年份可被4整除,可被400整除,被100整除的不是闰年
    public static void isLeapYear(){
        //Read year from console
        Scanner scanner = new Scanner(System.in);
        System.out.print("Please Enter a year: ");
        int year = scanner.nextInt();
        System.out.println();
        //Check if it is leap year
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            System.out.printf("%d is leap year",year);

        }else{
            System.out.printf("%d is not leap year",year);

        }
    }

    /*
    扩展练习:判定指定日期间经过的天数
    请判断从2000年1月1日到2019年5月1日一共经历了多少天?
     */
    //思路:正常年份是365天,闰年是366天,因为平年有28天,闰年有29天
    //先判断有几个闰年几个平年
    public static void daysCount(){

        int Jan = 31;
        int Feb = 28;
        int Mar = 31;
        int Apr = 30;



        int commonYearDays = 365;
        int leapYearDays = 366;
        int totalDays = 0;
        //first calculate days from 2000 to 2018
        for (int year = 2000; year < 2019; year++) {
            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
                totalDays += leapYearDays;
            }else {
                totalDays += commonYearDays;
            }
        }
        //calculate days from 2019.1.1 to 2019.5.1
        int daysFromJanToMay1st= totalDays+Jan+Feb+Mar+Apr+1;
        System.out.println(daysFromJanToMay1st+" days");
    }

}



国内最好的个人免费自学Java平台
Scanner用法链接: http://how2j.cn/p/2752

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值