⑴ java中如何比較時間(小時/分/秒)的大小
有兩個包里有日期的類型,不知道樓主想用哪個?java.util.Date和java.sql.Timestamp兩都可以,後面是面對資料庫的,before(),after(),equals()就可以比較兩個時間之間的關系了!
××××××××××××××××××××××××××××××××××××××××××××
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date nows=new java.util.Date();
java.util.Date date=dateFormat.parse("2005-09-12 12:36:29");
long hous=(nows.getTime()-date.getTime())/(60*60*1000);
轉換成long在比較 可以得到日期相差的時間
×××××××××××××××××××××××××××××××××××××××××××××
date1, date2;
long l1=date1.getTime();
long l2=date2.getTime();
if(l1>l2)
{
//說明date1比較新
}
else if(l1 == l2)
{
//說明date1和date2一樣
}
else
{
//說明date2比較新
}
×××××××××××××××××××××××××××××××××××××××××
SimpleDateFormat dateFormat=new SimpleDateFormat(sPatten);
String sText = dateFormat.format(dateValue);
得到sText後你愛怎麼比就怎麼比呀
sPatten =「yyyy」 取年
sPatten =「MM」 取月
sPatten =「dd」 取日
sPatten =「HH」 取小時
sPatten =「mm」 取分
sPatten =「ss」 取秒
××××××××××××××××××××××××××××××××××××××××××
Date date1 = .....
Date date2 = .....
Calendar cal = Calendar.getInstance();
cal.setTime(date1);
int n1 = Calendar.get(Calendar.DATE);
cal.setTime(date2);
int n2= Calendar.get(Calendar.DATE);
if (n1 == n2) {
}
......
⑵ Java 獲取當前時間的小時(24小時制)
使用new Date()獲取時間,通過SimpleDateFormat格式化類對Date進行格式話時間。
具體代碼如下:注意HH大寫代表24小時制。
輸出結果:1510416000000,2017-11-12。方便的實現了string轉時間的功能。
⑶ 在JAVA中如何判斷當前時間是不是整點
System.currentTimeMillis()產生一個當前的毫秒,這個毫秒其實就是自1970年1月1日0時起的毫秒數,用來計算當前毫秒與1970年1月1日之間的毫秒差。
那麼我們就可以longtime=System.currentTimeMillis();
然後換算一下小時,發現1小時等於3600s等於3600000ms。
那麼我們把這個long類型的time進行一次取余運算。
intmin=time%3600000;
那麼只要min的值小於一分鍾,即60000ms即可。
if(min<60000)System.out.println("當前時間為整點.");
elseprintln("非整點.");
整體簡化代碼如下:
if(System.currentTimeMillis()%3600000<60000)System.out.println("當前時間為整點.");
elseprintln("非整點.");
⑷ java中怎麼得到當前時間的小時
Date date=new Date();
DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time=format.format(date);
⑸ java 實現判斷時間早晚(如6:00:00 晚於 4:00:00)
寫一個比較時間的方法DateCompare給你,具體看注釋,在main方法裡面有測試:
importjava.text.SimpleDateFormat;
importjava.util.Date;
publicclassTEST{
/**
*@paramargs
*@throwsException
*/
publicstaticvoidmain(String[]args)throwsException{
//例如比較當前時間和早上6:00
StringnowTime=newSimpleDateFormat("HH:MM").format(newDate());
System.out.println("當前時間為:"+nowTime);
System.out.println("與當日06:00相比");
inti=DateCompare(nowTime,"06:00","HH:MM");
switch(i){
case0:
System.out.println("兩個時間相等");
break;
case1:
System.out.println("當前時間晚於06:00");
break;
case-1:
System.out.println("當前時間早於06:00");
break;
default:
break;
}
}
/**
*根據時間類型比較時間大小
*
*@paramsource
*@paramtraget
*@paramtype"YYYY-MM-DD""yyyyMMddHH:mm:ss"類型可自定義
*@param傳遞時間的對比格式
*@return
*0:source和traget時間相同
*1:source比traget時間大
*-1:source比traget時間小
*@throwsException
*/
publicstaticintDateCompare(Stringsource,Stringtraget,Stringtype)throwsException{
intret=2;
SimpleDateFormatformat=newSimpleDateFormat(type);
Datesourcedate=format.parse(source);
Datetragetdate=format.parse(traget);
ret=sourcedate.compareTo(tragetdate);
returnret;
}
}
該方法可以轉換時間、日期、具體什麼格式可以自定義,
另外如果你是需要做定時任務,推薦使用quartz有java的實現版。
希望對你有幫助。
⑹ java如何判斷從資料庫里取出的時間距當前時間是否超過一小時
一個小時=1000*60*60 毫秒
new java.util.Date().getTime(); 當前時間的毫秒數
用你2個時間的毫秒數相減,大於1000*60*60 ,就查過一小時了
⑺ java如何判斷時間的早中晚
先通過System.current獲取到當前的系統時間,這是一個long類型,new一個Date ,Date有一個getHours的方法,然後通過小時來判斷現在是早中晚,SimpleDateFormat只提供AM/PM兩個時間段,所以你只能得到現在是幾點,然後再直接判斷。
⑻ java判斷時間在幾點
很簡單,你先通過System.current獲取到當前的系統時間,這是一個long類型,new一個Date ,
Date有一個getHours的方法,然後通過小時來判斷現在是早中晚,因為你說的早中晚沒有確切的定義,而且SimpleDateFormat只提供AM/PM兩個時間段,所以你只能得到現在是幾點,然後在直接判斷
⑼ java工時判斷
手動設置節假日,以及工資倍數,然後根據員工上班時間,如果跟你設置的有重合,取出重合的計算工時,其他的就按照正常的計算