導航:首頁 > 編程語言 > java判斷兩個日期

java判斷兩個日期

發布時間:2022-04-15 06:47:26

1. java怎樣判斷下面的日期的先後

Java判段兩個日期的先後,方法如下:

importjava.util.Date;
importjava.text.ParseException;
importjava.text.SimpleDateFormat;publicclassTestD{
publicstaticvoidmain(String[]args){

Stringdate1="2017-07-1913:02:58";

Stringdate2="2017-07-1914:02:58";
//將字元串格式的日期格式化
SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddhh:mm:ss");
try{
//將日期轉成Date對象作比較
DatefomatDate1=sdf.parse(date1);
DatefomatDate2=sdf.parse(date2);
//比較兩個日期
intresult=fomatDate2.compareTo(fomatDate1);
//如果日期相等返回0
if(result==0){
System.out.println("兩個時間相等");
}elseif(result<0){
//小於0,參數date1就是在date2之後
System.out.println("date1大於date2");
}else{
//大於0,參數date1就是在date2之前
System.out.println("date1小於date2");
}

}catch(ParseExceptione){

e.printStackTrace();
}
}
}
結果:
date1小於date2

2. java中怎麼判斷2個日期是否在同一個月

importjava.util.Calendar;
importjava.util.Date;

publicclassTest{

/**
*@paramargs
*/

publicstaticvoidmain(String[]args){

//表示我也沒什麼用過日歷類去處理時間,大概思路就是去判斷是否同一年and是否同一月
System.out.println(equals(newDate(),newDate(newDate().getTime()+1500000000l)));
System.out.println(equals(newDate(),newDate(newDate().getTime()+3000000000l)));

}

publicstaticbooleanequals(Datedate1,Datedate2){

Calendarcalendar1=Calendar.getInstance();
calendar1.setTime(date1);
Calendarcalendar2=Calendar.getInstance();
calendar2.setTime(date2);
intyear1=calendar1.get(Calendar.YEAR);
intyear2=calendar2.get(Calendar.YEAR);
intmonth1=calendar1.get(Calendar.MONTH);
intmonth2=calendar2.get(Calendar.MONTH);
System.out.println(year1+""+month1);
System.out.println(year2+""+month2);
returncalendar1.get(Calendar.YEAR)==calendar2.get(Calendar.YEAR)&&calendar1.get(Calendar.MONTH)==calendar2.get(Calendar.MONTH);

}

}

3. java中如何計算出兩個日期之間相差多少天

思路就是根據它們相差的毫秒數除以每天的毫秒數(60*60*24*1000),代碼如下:

public static void main(String[] args) throws ParseException {

String date1="1987-01-01";

String date2="2010-01-01";

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-mm-dd");

Date d1=sdf.parse(date1);

Date d2=sdf.parse(date2);

long daysBetween=(d2.getTime()-d1.getTime()+1000000)/(60*60*24*1000);

System.out.println("1987-01-01 與 2010-01-01 相隔 "+daysBetween+" 天");

}

運行結果如下:

(3)java判斷兩個日期擴展閱讀:

Java使用以下三種方法來比較兩個日期:

1、使用 getTime() 方法獲取兩個日期(自1970年1月1日經歷的毫秒數值),然後比較這兩個值。

2、使用方法 before(),after() 和 equals()。例如,一個月的12號比18號早,則 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。

3、使用 compareTo() 方法,它是由 Comparable 介面定義的,Date 類實現了這個介面。

SimpleDateFormat 是一個以語言環境敏感的方式來格式化和分析日期的類。SimpleDateFormat 允許你選擇任何用戶自定義日期時間格式來運行

例如:

SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");

這一行代碼確立了轉換的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是時、分、秒。

注意:有的格式大寫,有的格式小寫,例如 MM 是月份,mm 是分;HH 是 24 小時制,而 hh 是 12 小時制。

以上實例編譯運行結果如下:

當前時間為: 2018-09-14 10:16:34

菜鳥教程-Java 日期時間

4. 如何用java比較兩個時間或日期的大小

首先
按照一定的格式輸入兩個日期的字元串
然後用simpledateformat類轉換成date實例date1,
date2
然後
calendar
cal1
=
calendar.getinstance();
calendar
cal2
=
calendar.getinstance();
cal1.settime(date1);
cal2.settime(date2);
這樣你就有了兩個表示所輸入日期的calendar實例了
calendar可以做很多事
比如用cal1.after(cal2)或者cal1.before(cal2)或者cal1.equals(cal2)或者cal1.compareto(cal2)來比較兩個日期時間先後
比如cal.get(calendar.year)可以得到表示該日期年份的整數
同理cal.get(calendar.month)可以得到月份
甚至可以用cal.gettimeinmillis()得到表示該日期的毫秒數
有了這些方法,簡單的計算之後就可以得到需要的相差的信息
如果樓主是來求現成的源代碼的-
-
我沒有

5. java 怎麼判斷兩個日期是否相等

方法一:把日期轉成string類型的,然後compare;

比如:

string time1,time2;

time1.compareTo(time2)>0說明time1是time2之後的時間

方法二:date的gettime進行比較

下面的代碼細細看看,您應該能看懂

publicstaticbooleancompare_date(DateDATE1,DateDATE2){
Datedt1=DATE1;
Datedt2=DATE2;
if(dt1.getTime()>dt2.getTime()){
System.out.println("dt1大於dt2");
returnfalse;
}elseif(dt1.getTime()<dt2.getTime()){
System.out.println("dt1小於dt2");
returntrue;
}else{
returnfalse;
}
}

6. 如何用java代碼比較兩個日期

首先 按照一定的格式輸入兩個日期的字元串
然後用SimpleDateFormat類轉換成Date實例date1, date2
然後
Calendar cal1 = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal1.setTime(date1);
cal2.setTime(date2);
這樣你就有了兩個表示所輸入日期的Calendar實例了

Calendar可以做很多事
比如用cal1.after(cal2)或者cal1.before(cal2)或者cal1.equals(cal2)或者cal1.compareTo(cal2)來比較兩個日期時間先後
比如cal.get(Calendar.YEAR)可以得到表示該日期年份的整數
同理cal.get(Calendar.MONTH)可以得到月份
甚至可以用cal.getTimeInMillis()得到表示該日期的毫秒數

有了這些方法,簡單的計算之後就可以得到需要的相差的信息

如果樓主是來求現成的源代碼的- - 我沒有

7. 用java寫任意選擇兩個日期用程序判斷他們的先後順序。大神求指教

public class Test {
public static void main(String s[]) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr1 = "2014-05-14 11:11:11";
String dateStr2 = "2014-05-14 12:12:12";
Date date1 = sdf.parse(dateStr1);
Date date2 = sdf.parse(dateStr2);
if(date1.getTime()-date2.getTime()>0) {
System.out.println("dateStr2 比 dateStr1 早");
}else{
System.out.println("dateStr1 比 dateStr2 早");
}
} catch (Exception ex) {
ex.printStackTrace();
}

}
}

8. java 判斷兩個日期相差多少天

publicstaticlongdaysBetween(Dated1,Dated2){if((d1==null)||(d2==null)){return0;}longld1=d1.getTime();longld2=d2.getTime();longdays=(long)((ld2-ld1)/86400000);returndays;}

9. java 判斷兩個日期是同一天

最簡單的方式就是把兩個日期都格式化成年月日的字元串日期,然後對比兩個字元串是否相等,如果相等就是同一天,否則就不是了。

10. java如何判斷兩個日期字元串相差多少天

沒有這樣的函數,但是你自己可以封裝一個這樣的函數。
一般來說,並不計算兩個日期相差的月數以及年數,因為月的天數以及年的天數並不是固定的,所以很多倒計時最多計算到天。
函數體:
SimpleDateFormat sf = new SimpleDateFormat("yyyyMMdd");
String a="20140301";
String b = "20140225";
Long c = sf.parse(b).getTime()-sf.parse(a).getTime();
long d = c/1000/60/60/24;//天
System.out.println(d+"天");
只要將a,b當做參數傳過去,將天數返回就可以

閱讀全文

與java判斷兩個日期相關的資料

熱點內容
看幀率app如何使用 瀏覽:523
從DHC伺服器租用IP地址 瀏覽:473
編譯怎麼學 瀏覽:329
數碼管顯示0到9plc編程 瀏覽:665
伺服器是為什麼服務的 瀏覽:765
java定義數據類型 瀏覽:874
安卓pdf手寫 瀏覽:427
什麼是app開發者 瀏覽:284
android鬧鍾重啟 瀏覽:101
程序員失職 瀏覽:518
在雲伺服器怎麼改密碼 瀏覽:586
伺服器pb什麼意思 瀏覽:940
51駕駛員的是什麼app 瀏覽:670
php靜態變數銷毀 瀏覽:888
編程買蘋果電腦 瀏覽:762
flac演算法 瀏覽:499
reactnative與android 瀏覽:665
程序員是干什麼的工作好嗎 瀏覽:258
kbuild編譯ko 瀏覽:471
條件編譯的宏 瀏覽:566