Java中的日期类

Java中的日期类

  • LocalDate
  • [例题(FROM 蓝桥杯23年Java省赛A组第一题)](#例题(FROM 蓝桥杯23年Java省赛A组第一题))

这几天开始刷真题了,and快比赛了,可能没时间写博客了,只有碰见新的知识点会出。

LocalDate

  • 导入:import java.tine.*;
  • 创建日期:LocalDate date = LocalDate.of(2026,4,8)可以自动校验合法性
  • 遍历日期:
java 复制代码
LocalDate begin = LocalDate.of(1900,1,1);
LocalDate end = LocalDate.of(9999,12,30);
for(LocalDate d = bgein;!d.isAfter(end);d = d.pulsDays(1))
{循环内的代码......}
  • 提取日期:
    此处的data是日期的变量名
    int year = date.getYear();
    int month = date.getMonthValue();//1~12
    int day = date.getDayOfMonth();//1~31
    int week = date.getDayOfWeek();//Monday = 1,Sunday = 7
  • 日期计算
    date.plusDays(x):加x天
    date.minusMonths(x):减x月
    类似的还有很多不一一列举......
  • 日期比较
    date1.isBefore(date2);
    date1.isEquals(date2);
    data1.isAfter(date2);

例题(FROM 蓝桥杯23年Java省赛A组第一题)

代码实现

java 复制代码
import java.util.*;
import java.time.*;
public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        LocalDate begin = LocalDate.of(1900,1,1);
        LocalDate end = LocalDate.of(9999,12,31);
        long ans = 0;
        for(LocalDate d = begin;!d.isAfter(end);d = d.plusDays(1)){
            if(ifTrue(d))
                ans ++;
        }
        System.out.print(ans);
        input.close();
    }
    static boolean ifTrue(LocalDate l){
        int year = l.getYear();
        int month = l.getMonthValue();
        int day = l.getDayOfMonth();
        if(digSum(year) == digSum(month) + digSum(day))
            return true;
        return false;
    }
    static int digSum(int n){
        int sum = 0;
        while(n>0){
            sum += n%10;
            n /= 10;
        }
        return sum;
    }
}
相关推荐
星栈独行19 分钟前
翻完 Pi 源码:它和 Codex、Claude Code 有何不同
开发语言·javascript·人工智能·程序人生
spencer_tseng39 分钟前
Redis + Nacos.bat
java·windows·dos
qq_4480111641 分钟前
C语言中的变量和函数的定义与声明
android·c语言·开发语言
troyzhxu1 小时前
列表查询的 GraphQL —— 一行代码终结你的 if-else 地狱!
java·springboot·graphql
孫治AllenSun2 小时前
【DataX】生产环境搭建DataX集群案例
java·开发语言·jvm
c238563 小时前
把 C++ 内存分配拆透:new 与 malloc 的三层血缘
开发语言·c++·算法
好好沉淀3 小时前
@NotBlank(message = “{xxx}“) 注解中花括号的含义
java
fīɡЙtīиɡ ℡3 小时前
内存泄漏产生的原因
java·spring·servlet
moonsims4 小时前
星闪在跨域无人化系统作用
开发语言·php
码智社4 小时前
Java实现RSA密钥生成、加密解密、加签验签
java