Java日期 判断平年闰年

该代码段展示了一个Java程序,用于判断输入的年份是否为闰年。闰年的规则包括能被4整除但不能被100整除,或者能被400整除。程序通过嵌套的if语句实现了这一逻辑,并在main方法中调用进行测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 说明:

       平年有365天,闰年有366天。闰年是指比平年多一天的年份,太阳运行周期为365天5小时48分46秒(合365.24219天),比公历平年短约0.2422天,因此每四年在2月末加1天,使当年的时间长度变为366天,这一年就是闰年。在公历(格里历)纪年中,有闰日的年份叫闰年,一般的年份365天,而闰年一年为366天。太阳运行周期为365天5小时48分46秒(合365.24219天)即一回归年,公历把一年定为365天。 而余下的时间每过四年累计约一天,这一天被加在二月里,所以平年每年365天,二月为28天,闰年为366天,多加了一天的二月为29天。

       
闰年月份相关:闰年1月~12月分别为31天、29天、31天、30天、31天、30天、31天、31天、30天、31天、30天、31天。 凡阳历中有闰日(2月29日)的年份,闰余(岁余置闰。阴历每年与回归年相比所差的时日)。
注意闰年(公历中的名词)和闰月(农历中的名词)并没有直接的关联,公历只分闰年和平年,平年有365天,闰年有366天(2月中多一天);平年中也可能有闰月(如2017年是平年,农历有闰月,闰六月)。

/**
 * 判断 闰年 平年
 * @author xiaojian
 * @date 2023-04-27 18:20:50
 */
public class LeapYear {

    public static void main(String[] args) {
        int year = 1998; // 待判断的年份
        boolean isLeapYear = isLeapYear(year); // 调用 isLeapYear 方法进行判断
        if (isLeapYear) {
            System.out.println(year + " 是闰年。");//定义自己要执行业务逻辑
        } else {
            System.out.println(year + " 不是闰年。");//定义自己要执行业务逻辑
        }
    }

    public static boolean isLeapYear(int year) {
        if (year % 4 == 0) {
            if (year % 100 == 0) {
                if (year % 400 == 0) {
                    return true; // 满足以下三种情况之一即为闰年:能被4整除但不能被100整除、能被400整除、能被4整除但能被100整除
                } else {
                    return false; // 不满足以上三种情况的即为平年
                }
            } else {
                return true; // 能被4整除但不能被100整除的即为闰年
            }
        } else {
            return false; // 不满足以上两种情况的即为平年
        }
    }
}

 结果集

 

 

总结:

在上述代码中,isLeapYear 方法用于判断给定的年份是否为闰年。如果该年份能被 4 整除但不能被 100 整除,则该年份为闰年;否则,该年份为平年。

main 方法中,我们先定义了一个待判断的年份 year,然后调用 isLeapYear 方法进行判断。最后根据判断结果输出相应的信息。

需要注意的是,闰年的判断规则是:能被 4 整除但不能被 100 整除的年份是闰年;能被 4 整除但能被 100 整除的年份不是闰年;不能被 4 整除的年份是平年。因此,在 isLeapYear 方法中,我们使用了三个嵌套的 if 语句来实现这一判断规则。

### CSS 实现元素水平垂直居中布局的方法 以下是常见的几种方法来实现 CSS 中的水平垂直居中: #### 方法一:使用 `margin: auto` 和绝对定位 通过设置子元素的位置为绝对,并利用外边距自动分配的特点,可以轻松实现水平垂直居中。 ```css .parent { position: relative; height: 300px; /* 设置高度 */ width: 300px; /* 设置宽度 */ } .child { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); margin: auto; } ``` 这种方法适用于已知宽高的子元素[^1]。 #### 方法二:使用 `vertical-align` 和 `line-height` 当需要对行内元素或表单元素进行垂直居中时,可以通过组合 `text-align` 和 `line-height` 来完成。这种方式适合于单行文字或者固定高度的内容。 ```css .container { text-align: center; /* 水平居中 */ line-height: 200px; /* 容器的高度 */ height: 200px; } .item { display: inline-block; vertical-align: middle; line-height: normal; /* 防止继承容器的行高 */ } ``` 此方法仅限于特定场景下的应用[^2]。 #### 方法三:弹性布局(Flexbox) 现代浏览器广泛支持 Flexbox 布局模型,它提供了非常简洁的方式来处理复杂的布局需求,包括水平垂直方向上的中心化。 ```css .flex-container { display: flex; justify-content: center; /* 主轴上居中 */ align-items: center; /* 交叉轴上居中 */ height: 300px; /* 设定容器大小 */ width: 300px; } ``` 这是目前推荐使用的解决方案之一,因为它具有良好的兼容性和易读性[^3]。 #### 方法四:网格布局(Grid Layout) 类似于 Flexbox 的功能强大之处在于能够创建二维空间内的项目排列方式。同样也可以很容易做到让某个区域位于屏幕正中央。 ```css .grid-container { display: grid; place-items: center; /* 同时指定行列方向均居中 */ height: 300px; width: 300px; } ``` 以上列举了几种主流技术手段用于解决网页设计过程中遇到的实际问题——即如何使某对象既能在页面内部横向又能纵向精确地位于其中心点处。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你才是臭弟弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值