java中的日期和時(shí)間比較大小
日期和時(shí)間比較大小
java中日期如何比較大小
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); //設(shè)置日期格式
Date begin = fmt.parse("2017-07-30"); //開始日期
Date end = fmt.parse("2017-08-30"); //結(jié)束日期
try {
Date bt=df.parse(begin );
Date et=df.parse(end );
if (bt.before(et)){
bt日期小于et日期
}
if (bt.after(et)){
bt日期大于et日期
}
} catch (ParseException e) {
e.printStackTrace();
} java中時(shí)間如何比較大小
public static void main(String[] args) throws ParseException {
String time = "2019-6-02 11:06:51";
String time1 = "2019-6-02 11:05:51";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1 = format.parse(time);
Date d2 = format.parse(time1);
//前者大于后者 返回大于0的數(shù)字反之小于0的數(shù)字,等于返回0
System.out.println(d1.compareTo(d2));
}比較兩個(gè)日期時(shí)間,比較兩個(gè)日期大小
我們經(jīng)常會(huì)遇到一個(gè)問題,需要比較兩個(gè)時(shí)間的大小,或者需要判斷一個(gè)時(shí)間在另一個(gè)時(shí)間之前,或者一個(gè)時(shí)間在另一個(gè)時(shí)間之后,比較日期時(shí)間的大小,還要精確到秒,這個(gè)時(shí)候經(jīng)常會(huì)有一些人卡住。
這個(gè)時(shí)候我們來講解一下java8的新日期時(shí)間類。
LocalDateTime
可以很好的解決日期比較大小的問題,而且是線程安全的,精確到秒
不說廢話直接上代碼
看不懂的可以直接復(fù)制使用 只需要傳2個(gè)需要比較的日期時(shí)間即可
但是必須需要jdk8版本 因?yàn)檫@個(gè)是java8的日期時(shí)間處理類
public boolean verifyDate(Date begin,Date end){
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime beginDate = LocalDateTime.ofInstant(begin.toInstant(), zoneId);
LocalDateTime endDate = LocalDateTime.ofInstant(end.toInstant(), zoneId);
return beginDate.isBefore(endDate);
}比較begin的時(shí)間是否在end之前 看不懂的可以直接復(fù)制上面代碼 使用 精確到秒
- begin < end 返回true
- begin > end 返回false
- begin = end 返回false
主要是使用LocalDateTime有一種比較的方法

isBefore(LocalDateTime ):可判斷當(dāng)前的localdatetime時(shí)間在參數(shù)的localdatetime之后isAfter(LocalDateTime):可判斷當(dāng)前的localdatetime時(shí)間在參數(shù)的localdatetime之前
如:
isBefore()

a.isBefore(b)
- a < b 返回true
- a = b 返回false
- a > b 返回false
isAfter()

a.isAfter(b)
- a < b 返回false
- a = b 返回false
- a > b 返回true
DateTimeFormatter
DateTimeFormatter這個(gè)相當(dāng)于simpledateformatter的日期安全類
他提供了更強(qiáng)大的api
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java?ArrayList集合之解鎖數(shù)據(jù)存儲(chǔ)新姿勢(shì)
這篇文章主要介紹了Java?ArrayList集合之解鎖數(shù)據(jù)存儲(chǔ)新姿勢(shì),ArrayList是一個(gè)動(dòng)態(tài)數(shù)組,可以自動(dòng)調(diào)整大小,并提供了豐富的操作方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-03-03
IDEA中項(xiàng)目集成git提交代碼的詳細(xì)步驟
這篇文章主要介紹了IDEA中項(xiàng)目集成git提交代碼的詳細(xì)步驟,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10
SpringBoot整合JWT的實(shí)現(xiàn)示例
JWT是目前比較流行的跨域認(rèn)證解決方案,本文主要介紹了SpringBoot整合JWT的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
Java高效提取PDF文件指定坐標(biāo)的文本內(nèi)容實(shí)戰(zhàn)代碼
在日常工作中,有時(shí)可能會(huì)需要從龐大的PDF文檔中提取其中所包含的文本內(nèi)容,下面這篇文章主要給大家介紹了關(guān)于如何利用Java高效提取PDF文件指定坐標(biāo)的文本內(nèi)容,需要的朋友可以參考下2024-01-01
一文帶你理解@RefreshScope注解實(shí)現(xiàn)動(dòng)態(tài)刷新原理
RefeshScope這個(gè)注解想必大家都用過,在微服務(wù)配置中心的場(chǎng)景下經(jīng)常出現(xiàn),他可以用來刷新Bean中的屬性配置,那大家對(duì)他的實(shí)現(xiàn)原理了解嗎,它為什么可以做到動(dòng)態(tài)刷新呢,所以本文小編將給大家詳細(xì)介紹@RefreshScope注解實(shí)現(xiàn)動(dòng)態(tài)刷新原理2023-07-07
springboot使用Hutool的JschUtil及下載安裝步驟
這篇文章主要為大家介紹了springboot使用Hutool的JschUtil的方法及下載安裝詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
Eclipse中改變默認(rèn)的workspace的方法及說明詳解
eclipse中改變默然的workspace的方法有哪幾種呢?接下來腳本之家小編給大家介紹Eclipse中改變默認(rèn)的workspace的方法及說明,對(duì)eclipse改變workspace相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2016-04-04
spring aop之@AfterReturning不生效問題及解決
這篇文章主要介紹了spring aop之@AfterReturning不生效問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
SpringBoot?把PageHelper分頁信息返回給前端的方法步驟
本文主要介紹了SpringBoot?把PageHelper分頁信息返回給前端的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-01-01

