巧用JAVA自带的API解决日期类问题

文章目录

    • 题目
    • 代码
    • 优势

题目

特殊日期
在这里插入图片描述

代码

import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
import java.time.LocalDate;
public class Main {public static void main(String[] args) {Scanner scan = new Scanner(System.in);//在此输入您的代码...LocalDate date = LocalDate.of(1900,1,1);int count=0;while(true){if(date.getYear()==9999&&date.getMonth().getValue()==12&&date.getDayOfMonth()==31) break;int y1 = date.getYear()%10;int y2 = date.getYear()/10%10;int y3 = date.getYear()/100%10;int y4 = date.getYear()/1000;int m1 = date.getMonth().getValue()%10;int m2 = date.getMonth().getValue()/10;int d1 = date.getDayOfMonth()%10;int d2 = date.getDayOfMonth()/10;if((y1+y2+y3+y4)==(m1+m2+d1+d2)) count++;date = date.plusDays(1);}System.out.println(count);scan.close();}
}

优势

这个设置当前的日期为1900.01.01,用自带api,不用考虑闰年还是平年的问题,可以大量减少代码的编写。

LocalDate 是 Java 8 中引入的日期时间 API(java.time包)中的一个类,它用于表示不带时区的日期。LocalDate 主要包含年、月和日,没有时、分、秒等时间信息。以下是关于 LocalDate 类的一些重要信息:
创建 LocalDate 对象
可以通过多种方式创建 LocalDate 对象:
// 获取当前日期
LocalDate today = LocalDate.now();

// 通过年月日创建
LocalDate specificDate = LocalDate.of(2023, 12, 3);

// 通过字符串解析
LocalDate parsedDate = LocalDate.parse(“2023-12-03”);

常用方法
LocalDate 提供了多种方法来获取和操作日期:

1.获取年、月、日:

int year = today.getYear();
int month = today.getMonthValue();
int day = today.getDayOfMonth();

2.日期运算:

LocalDate futureDate = today.plusDays(7); // 加7天
LocalDate pastDate = today.minusMonths(2); // 减去2个月

3.判断日期先后:

boolean isBefore = today.isBefore(specificDate);
boolean isAfter = today.isAfter(specificDate);

格式化和解析
LocalDate 可以与字符串进行相互转换:
// 格式化为字符串
String formattedDate = today.format(DateTimeFormatter.ofPattern(“yyyy-MM-dd”));

// 从字符串解析
LocalDate parsedDate = LocalDate.parse(“2023-12-03”, DateTimeFormatter.ofPattern(“yyyy-MM-dd”));

不可变性
LocalDate 是不可变的类,一旦创建就不能被修改。对 LocalDate 对象的任何修改操作都会返回一个新的对象。
LocalDate tomorrow = today.plusDays(1);
System.out.println(today); // 输出当前日期
System.out.println(tomorrow); // 输出明天的日期

总结
LocalDate 是 Java 8 引入的强大日期类,用于处理日期操作而不考虑时区。它提供了丰富的方法来获取、操作日期,同时具备不可变性,使得处理日期变得更加方便和安全。在应用程序中,特别是处理本地日期的场景中,LocalDate 是一个非常实用的类。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/195526.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python更改YOLOv5、v7、v8,实现调用val.py或者test.py后生成pr.csv,然后再整合绘制到一张图上(使用matplotlib绘制)

1. 前提 效果图 不错的链接:YOLOV7训练模型分析 关于map的绘图、loss绘图,可参考:根据YOLOv5、v8、v7训练后生成的result文件用matplotlib进行绘图 v5、v8调用val.py,v7调用test.py(作用都是一样的,都是…

基于Linux的网络防火墙设计方法

摘要 随着Internet的迅速发展,网络越来越成为了人们日常生活不可或缺的一部分,而随之引出的网络安全问题也越来越突出,成为人们不得不关注的问题。 为了在一个不安全的网际环境中构造出一个相对安全的环境,保证子网环境下的计算机…

javaScript-正则表达式

正则表达式 正则表达式(Regular Expression)是一种描述字符串规律的表达式,可以迅速地用极简单的方式达到字符串的校验控制。 作用:利用较简短的描述语法完成诸如查找、匹配、替换等功能 如何创建正则表达式: 方法1 直接声明…

行业分析:2023年木炭行业市场需求及发展前景

木炭是一种燃料名称。是木材或木质原料经过不完全燃烧,或者在隔绝空气的条件下热解,所残留的深褐色或黑色多孔固体燃料。木炭产品主要分为白炭、黑炭、活性炭、机制炭等四大类。 木炭是保持木材原来构造和孔内残留焦油的不纯的无定形碳。中国商代的青铜器…

【每日OJ —— 101. 对称二叉树】

每日OJ —— 101. 对称二叉树 1.题目:101. 对称二叉树2.解法2.1.算法讲解2.2.代码实现2.3.提交通过展示 1.题目:101. 对称二叉树 2.解法 2.1.算法讲解 1.该题是判断二叉树是否对称,关键在于,左子树等于右子树,而所给的…

Pytorch当中squeeze(1)函数和unsqueeze(1)函数的区别及含义

一、squeeze(1) 在 PyTorch 中,.squeeze(1) 是用于张量维度操作的方法之一,它的作用是将张量中尺寸为 1 的维度压缩(去除)掉。 具体来说,如果张量在指定维度(这里是维度 1)上的尺寸…

一次docker swarm重启的教训

背景: 公司有个业务系统是基于docker swarm的部署架构。由于我修改了某个配置,需要对docker进行重启,执行完systemctl restart docker 以后容器中的服务没有按计划启动起来。 执行docker service ls发现swarm中的服务在,但是容器…

Java手写字典树(Trie树),实现敏感词过滤

1.简介 字典树:也叫做前缀树,是一种高效的存储、配对字符串的数据结构,存储过程如下: 假设我们有单词:app、apple、cat。如果存在链表中: ["app"、"apple"、"api"、"…

Linux 文件查找

1 文件查找 在文件系统上查找符合条件的文件 文件查找:locate,find 1.1 locate 工作特点: 格式: Usage: locate [OPTION]... [PATTERN]...常用选项: -i :不区分大小写的搜索 -n N :只列举前…

python程序将部分文件复制到指定目录

geotools-28.2中的lib一共有264个jar包,但我只想将部分100个左右jar包引导我的环境中,那个就需要从目录中找出想要的那100个jar,手动挑选太费时间,我简单的写了个小脚本来实现。 我将想要的jar文件名和路径存放到txt中&#xff0…

京东商品详情接口在电商行业中的重要性及实时数据获取实现

一、引言 随着电子商务的快速发展,商品信息的准确性和实时性对于电商行业的运营至关重要。京东作为中国最大的电商平台之一,其商品详情接口在电商行业中扮演着重要的角色。本文将深入探讨京东商品详情接口的重要性,并介绍如何通过API实现实时…

js中数组对象去重的方法

前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 最近工作中需要用到数组对象去重的方法,我是怎么想也没想出来,今天稍微研究了一下,总算找到了2种方法。分享一下&…

Python编程的经典示例及应用

前言 Python作为一种简洁而强大的编程语言,提供了许多经典示例以展示其语言特性和功能。在本文中,我们将探讨一些经典的Python示例,并展示它们在实际应用中的价值。通过这些示例,读者可以深入了解Python的灵活性和易用性&#xff…

js选中起始时间使用标准时间毫秒值计算一年后的当前少一天的日期(并考虑闰年)

js选中起始时间使用标准时间毫秒值计算一年后的当前少一天的日期 实际代码里面带入默认日期’20230301’这个特殊日期&#xff0c;因为下一年的当前日期少一天为闰年的2月会有29天&#xff0c;使用特殊值校验代码效果图 HTML部分代码 <el-button click"chengTime()&q…

C# WPF上位机开发(带配置文件的倒计时软件)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 前面我们写了倒计时软件&#xff0c;但是不知道大家有没有发现&#xff0c;这个软件起始有一个缺点&#xff0c;那就是倒计时的起始时间都是硬编码…

Spring Security 自定义异常失效?源码分析与解决方案

&#x1f680; 作者主页&#xff1a; 有来技术 &#x1f525; 开源项目&#xff1a; youlai-mall &#x1f343; vue3-element-admin &#x1f343; youlai-boot &#x1f33a; 仓库主页&#xff1a; Gitee &#x1f4ab; Github &#x1f4ab; GitCode &#x1f496; 欢迎点赞…

分享73个节日PPT,总有一款适合您

分享73个节日PPT&#xff0c;总有一款适合您 73个节日PPT下载 链接&#xff1a;https://pan.baidu.com/s/1FG9Y-9yR31Y-fs3zxKI4Pg?pwd6666 提取码&#xff1a;6666 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整理更不…

vue3 mixins

Vue3 中的 mixins 是一种复用组件逻辑的方式。在 Vue2 中&#xff0c;我们通常使用 mixins 来将一些全局的方法或者数据混入到多个组件中。但是在 Vue3 中&#xff0c;由于组合式 API 的引入&#xff0c;我们可以使用更灵活的方式来复用逻辑。 在 Vue3 中&#xff0c;我们可以…

LeetCode | 572. 另一棵树的子树

LeetCode | 572. 另一棵树的子树 OJ链接 我们需要判断两棵二叉树是否相同&#xff0c;如果再判断的的时候不同我们就直接返回false&#xff0c;否则就返回true然后再检查左子树和右子树里面是否存在subRoot子树~~ bool isSameTree(struct TreeNode* q, struct TreeNode* p) {…

C语言从入门到实战——常用内存函数的了解和模拟实现

常用内存函数的了解和实现 前言1. memcpy使用和模拟实现2. memmove使用和模拟实现3. memset函数的使用4. memcmp函数的使用 前言 内存函数&#xff08;memory functions&#xff09;指的是控制计算机内存操作的函数 1. memcpy使用和模拟实现 void * memcpy ( void * destinat…