㈠ java 判斷兩個日期是同一天
最簡單的方式就是把兩個日期都格式化成年月日的字元串日期,然後對比兩個字元串是否相等,如果相等就是同一天,否則就不是了。
㈡ 怎樣在JAVA判斷出生日期 和 身份證中的出生日期 相等!
想用一個String得到出生日期,以純數字型字元串放進去,然後在把身份證號碼放在一個String裡面,然後調用
java.long包裡面的一個indexOf()方法,搜索第一個出現的字元串值,具體如下:
//比如出生日期是1985年5月16日,那就以純數字型放到一個字元串裡面
String
chushengriqi
=
"19850516";
//在把身份證號碼放到一個字元串裡面
String
shenfen
=
"身份證號碼";
//調用indexOf()方法,會返回一個int型的數值
int
i
=
0;
i
=
shengfen.indexOf(shushengriqi);
//在用if判斷i是否有值,有值代表出生日期和身份證號碼中的出生年月日相同
if(i
>
0){
//正確後需要做什麼
}else{
//錯誤後做什麼
}
㈢ 如何正確比較日期 java.sql.Date
java.sql.Date比較:
import java.sql.Date;
例如今天是2010-12-2
Date d1 = new Date(System.currentTimeMili());
Date d2 = new Date(System.currentTimeMili()+1);//比d1晚1毫秒
日期上,我們認為d1和d2是相等的
但是
System.out.println(d1.before(d2));
輸出結果是true;
其實我們希望看到的是這兩個對象在日期上是相等的。
因為我們只關心「日期」,而「2010-12-2」不等於「2010-12-2」
這個結果顯然是我們所不能接受的。
究其原因,是因為Date內封裝了一個精確到毫秒的表示時間的
private transient long fastTime;
而before和after的函數的實現如下,都是判斷fastTime的值,所以達不到我們只比較日期的要求。
public boolean before(Date when) {
return getMillisOf(this) < getMillisOf(when);
}
public boolean after(Date when) {
return getMillisOf(this) > getMillisOf(when);
}
把日期格式成標準的「年月日」,然後對格式化後的對象進行比較,得到比較的結果
本文給出一種「格式成標准化」的方式
Date d1_temp = java.sql.Date.valueOf(d1.toString());
Date d2_temp = java.sql.Date.valueOf(d2.toString());
System.out.prinltn(d1_temp.equals(d2_temp));//輸出結果是true;
System.out.prinltn(d1_temp.before(d2_temp));//輸出結果是false;
System.out.prinltn(d1_temp.after(d2_temp));//輸出結果是false;
需要邏輯的話,可以寫成
if(d1_temp.before(d2_temp)){
.........
}
㈣ java怎麼比較兩個日期(年和月)的大小
你好,沒有這樣的函數。不過我可以給你一段比較的代碼。希望對你有幫助。代碼如下:import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date; /**
*
* @author hp
*/
public class test { public static void main(String args[]) {
int i= compare_date("2009-11-12 15:21", "2009-12-11 09:59");
System.out.println("i=="+i);
} public static int compare_date(String DATE1, String DATE2) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm");
try {
Date dt1 = df.parse(DATE1);
Date dt2 = df.parse(DATE2);
if (dt1.getTime() > dt2.getTime()) {
System.out.println("dt1 在dt2前");
return 1;
} else if (dt1.getTime() < dt2.getTime()) {
System.out.println("dt1在dt2後");
return -1;
} else {
return 0;
}
} catch (Exception exception) {
exception.printStackTrace();
}
return 0;
}
}
㈤ 怎麼判斷java.sql.Date類型的日期與 sql 2005 的datetime類型的數據相等
Select CONVERT(varchar(100), GETDATE(), 23)
把GETDATE()換成你要對比的資料庫欄位試試;
如果不行你嘗試著把datetime轉成字元,然後截取字元串做對比。
如果還不行,你網路下。。
㈥ java代碼中怎麼比較時間的大小
比較getTime獲取的整數值大小即可,整數值大的時間就大,整數值小的時間就小
例如:
publicintcompareDate(Dated1,Dated2){
if(dt1.getTime()>dt2.getTime()){
System.out.println("dt1在dt2前");
return1;
}elseif(dt1.getTime()<dt2.getTime()){
System.out.println("dt1在dt2後");
return-1;
}else{//相等
return0;
}
}
還有:
importjava.text.SimpleDateFormat;
importjava.util.Date;
publicclassDate_Test{
publicstaticvoidmain(String[]args){
Dated1=newDate();//第一個時間
Dated2=newDate();//第二個時間
SimpleDateFormatf=newSimpleDateFormat("hhmmss");//格式化為hhmmss
intd1Number=Integer.parseInt(f.format(d1).toString());//將第一個時間格式化後轉為int
intd2Number=Integer.parseInt(f.format(d2).toString());//將第二個時間格式化後轉為int
if(d1Number>d2Number){
System.out.println("時間d1大");
System.out.println(d1Number);
}
else{
System.out.println("時間d2大");
System.out.println(d2Number);
}
}
}
㈦ java 判斷兩個日期 是否同一天
最簡單的方式就是把兩個日期都格式化成年月日的字元串日期,然後對比兩個字元串是否相等,如果相等就是同一天,否則就不是了。
㈧ java判斷兩個時間是不是同一天的方法
把二個時間的的年月日分別對比,完全相等就是同一天,代碼下:
private static boolean isSameDate(Date date1, Date date2) {
Calendar cal1 = Calendar.getInstance();
cal1.setTime(date1);
Calendar cal2 = Calendar.getInstance();
cal2.setTime(date2);
boolean isSameYear = cal1.get(Calendar.YEAR) == cal2
.get(Calendar.YEAR);
boolean isSameMonth = isSameYear
&& cal1.get(Calendar.MONTH) == cal2.get(Calendar.MONTH);
boolean isSameDate = isSameMonth
&& cal1.get(Calendar.DAY_OF_MONTH) == cal2
.get(Calendar.DAY_OF_MONTH);
return isSameDate;
}
㈨ java 怎麼比較兩個時間是否相等
一般時間比較是比較它的值。
一般時間表現為兩種形式:
時間戳:例,1506484528223(到秒),表示到1900年的秒數
格式化時間:例,20170927120000 (就是格式化時間yyyyMMddHHmmss一類的)
比較時間時要轉換為同一種形式比較才有意義。以下供參考,我不知道你exetime的格式:
//其中的格式按照你exetime的格式來寫
Stringtimes=newSimpleDateFormat("yyyyMMddHHmmss").format(newDate());
System.out.println(times.substring(0,10));
System.out.println(exetime.substring(0,10));
//轉換相同形式後用equals判斷就好了
System.out.println(times.substring(0,10).equals(exetime.substring(0,10)));
㈩ java中時間比較
1,FormatDate轉換成字元串比較
2,利用Date類的方法getTime() 得到long類型的值進行比較
3,利用Date 的方法
boolean after(Date when)
測試此日期是否在指定日期之後。
boolean before(Date when)
測試此日期是否在指定日期之前。
boolean equals(Object obj)
比較兩個日期的相等性。