A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package com.heima.test;
import java.util.Calendar;
import java.util.Scanner;
public class Test3 {
        /**
         * * A:案例演示
         * 需求:键盘录入任意一个年份,判断该年是闰年还是平年
         * Calendar c = Calendar.getInstance();
         *
         * 分析:
         * 1,键盘录入年Scanner
         * 2,创建Calendar c = Calendar.getInstance();
         * 3,通过set方法设置为那一年的3月1日
         * 4,将日向前减去1
         * 5,判断日是多少天,如果是29天返回true否则返回false
         */
        public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入年份,判断该年份是闰年还是平年:");
                //int year = sc.nextInt();
               
                String line = sc.nextLine();                                //录入数字字符串
                int year = Integer.parseInt(line);                        //将数字字符串转换成数字
                boolean b = getYear(year);                                        //这里输入的是年份
                System.out.println(b);
        }
        private static boolean getYear(int year) {
                //2,创建Calendar c = Calendar.getInstance();
                Calendar c = Calendar.getInstance();
                //设置为那一年的3月1日
                c.set(year, 2, 1);
                //将日向前减去1
                c.add(Calendar.DAY_OF_MONTH, -1);
                //判断是否是29天
                return c.get(Calendar.DAY_OF_MONTH) == 29;
        }

评分

参与人数 2黑马币 +30 收起 理由
不二先生 + 10 赞一个!
流浪之子 + 20 很给力!

查看全部评分

3 个回复

倒序浏览
不是传统的闰年的计算方法,学习了。计算不是很麻烦,传统的闰年计算方法稍麻烦:能被 4 除尽的年份为闰年,但对世纪年(如1600,1700,……),只有能被 400 除尽的才为闰年。
回复 使用道具 举报 1 0
不错 不错
回复 使用道具 举报
这个方法好高大上。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马