java日期類型
1. java判斷字元串是否是日期類型
Java為了支持多語言,沒有固定的日期格式。你需要根據自己的需要指定日期格式,然後用DateFormat類或者SimpleDateFormat類來判斷是否是正確的日期格式。
下面的例子供參考。更詳細的內容可以參考javadoc。
public class DateUtil{ private static final SimpleDateFormat dateFormat = null; static { dateFormat = new SimpleDateFormat("yyyy/MM/dd"); dateFormat.setLenient(false); } public static boolean isValidDate(String s) { try { dateFormat.parse(s); return true; } catch (Exception e) { return false; } } public static String formatDate(Date d) { return dateFormat.format(d); } }
2. java的日期類型問題
long now = System.currentTimeMillis();
long t=now;
System.out.println(now);
now = now/1000/60/60/24;
now = now*1000*60*60*24;
System.out.println((t-now)/1000/60/60);
System.out.println(now);
//new Date(now*1000*60*60*24);
System.out.println(new Date());
System.out.println(new Date(now));
我也很感興趣,對你的代碼進行了計算,發現你中間去掉的時分秒正好是從8點到你統計時刻的時間.......
3. Java如何獲取Date類型且格式為yyyy-mm-dd的日期數據
@return返回長時間格式 yyyy-MM-dd HH:mm:ss
*/ public static Date getsqlDate() {
Date sqlDate = new java.sql.Date(new Date().getTime());
return sqlDate; }
/**
* 獲取現在時間
@return返回長時間格式 yyyy-MM-dd HH:mm:ss
*/ public static Date getNowDate() {
Date currentTime = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = formatter.format(currentTime);
ParsePosition pos = new ParsePosition(8);
java.sql 類 Date
java.lang.Object
java.util.Date
java.sql.Date
所有已實現的介面:
Serializable,Cloneable,Comparable<Date>
public class Dateextends Date
概述:一個包裝了毫秒值的瘦包裝器 (thin wrapper),它允許 JDBC 將毫秒值標識為 SQL DATE 值。毫秒值表示自 1970 年 1 月 1 日 00:00:00 GMT 以來經過的毫秒數。
為了與 SQL DATE 的定義一致,由 java.sql.Date 實例包裝的毫秒值必須通過將小時、分鍾、秒和毫秒設置為與該實例相關的特定時區中的零來「規范化」。
以上內容參考:網路-date
4. 如何將JAVA DATE類型的日期 轉換成指定格式類型的 (如:YYYY-MM-DD) 的 DATE類型數據
Date類型並沒有格式,只有轉換成String格式的時候讓格式化顯示。
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")format(new Date());
Calendar calendar = Calendar.getInstance();
int year = Integer.parseInt(datetime.substring(0,4));
int month = Integer.parseInt(datetime.substring(5,7));
int date = Integer.parseInt(datetime.substring(8,10));
int hour = Integer.parseInt(datetime.substring(11,13));
int minute = Integer.parseInt(datetime.substring(14,16));
//int second = Integer.parseInt(datetime.substring(17,19));
if(calendar.get(Calendar.YEAR)>year){
int y = calendar.get(Calendar.YEAR)-year;
(4)java日期類型擴展閱讀:
Date類可以在java.util包中找到,用一個long類型的值表示一個指定的時刻。它的一個有用的構造函數是Date(),創建一個表示創建時刻的對象。getTime()方法返回Date對象的long值。
import java.util.*;
public class Now {
public static void main(String[] args) {
Date now = new Date();
long nowLong = now.getTime();
System.out.println("Value is " + nowLong);
5. java裡面的時間是什麼數據類型
java裡面的時間是Date類型的。
java的基本數據類型包括:byte,short,int,lang,float,double,char,Boolean,沒有Date類型。
date類型是一個封裝類。
獲取當前時間的方法可以用getDate或者new date()來獲取。
6. java怎麼把字元串轉換成日期類型
SimpleDateFormat類
有個parse方法
public Date parse(Stringtext, ParsePositionpos)
解析字元串的文本,生成Date。
此方法試圖解析從pos給定的索引處開始的文本。如果解析成功,則將pos的索引更新為所用最後一個字元後面的索引(不必對直到字元串結尾的所有字元進行解析),並返回解析得到的日期。更新後的pos可以用來指示下次調用此方法的起始點。如果發生錯誤,則不更改pos的索引,並將pos的錯誤索引設置為發生錯誤處的字元索引,並且返回 null。
指定者:
類DateFormat中的parse
參數:
text- 應該解析其中一部分的String。
pos- 具有以上所述的索引和錯誤索引信息的ParsePosition對象。
返回:
從字元串進行解析的Date。如果發生錯誤,則返回 null。
拋出:
NullPointerException- 如果text或pos為 null。
另請參見:
DateFormat.setLenient(boolean)
7. java里表示時間的類型是什麼
java.util.Date,和java.util.Calendar 是 java 的主要的時間類型
Java.util.Calendar類是java.util.Date類的一個更加深入,更加全面的替代。Java.util.Calendar類支持java.util.Date的所有功能,此外,Calendar還引入了多語言,多區域的特性,可以根據需要獲取不同區域,不同時區的時間,Calendar還增加了比Date更加方便和快捷的許多操作,如獲取一年當中的第幾個星期,各個月的天數等便捷的方法。
Java.util.Calendar區別與java.util.Date的幾個地方也需要注意一下:首先,Calendar增加了毫秒的時間段,通過它可以獲取時間點的毫秒值,而java.util.Date只是精確到秒。其次,Calendar過去年的時候是當前年份比如:2010,而Date獲取年份的時獲取到的是當前年份-1900的一個值(2010-1900=110,因此,你調用getYear後過去的值就是110)。最後Calendar是一個抽象類,之所以能夠實例化,是因為此處的Calendar充當了一個類似於工廠的作用,在getInstance方法中實例化了Calendar子類GregorianCalendar,並把它返回給客戶使用。
此外,還有 java.sql.Date, java.sql.Time, java.sql.Timestamp
8. java Date類型。
Data類型是日期類型,通常是為了獲取某些特定的日期或者轉換日期的格式為字元串。舉例:
Date date = new Date();//定義一個當前日期,此時輸出就是日期類型
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//創建格式日期類型
String str = sdf.format(date);//對創建的日期進行格式化輸出。此時輸出就是字元串日期類型
輸出結果:2015--6-30 19:17:32。
9. JavaWeb的實體類定義中一般日期定義成什麼格式
前後端交流數據,我建議的是,大家都統一成時間戳.
如果是string,或者Date,不好統一.
每個前端的日期格式不一樣,可能A頁面傳過來的是2020-10-10 12:00 GTM+8之類的.
B頁面傳過來的又是2020/10/10 12:00,每個人都特么不一樣.
現在很多程序員都是前後端一體開發,自己寫的可能你還會注意統一一下.但如果不是同一個人寫,有模塊之間調用,很麻煩的.你轉換器到底怎麼寫才合適?
所以我建議用時間戳,long類型的,這個大家都沒有異議,世界統一啊.
我不管你前端怎麼顯示,怎麼定義,但你要傳給我後端的時候,我只要時間戳,而我內部我怎麼定義,怎麼用,那是我的事,我傳給你前端時,也只會給你時間戳.
這樣的話,你自己開發沒問題,跟其他人對接也不會有問題.
而實體類你直接定義成Date就可以.前端傳值一個long類型的時間戳,是可以直接裝入到Date類型的,這種spring是有默認轉換器的,都不用操心.
而Date也可以直接存入資料庫中的Date,Time,TimeStamp等時間類型的.也不需要轉換.
綜上,總結下:資料庫是時間格式的(Date,Time,TimeStamp),實體是Date格式的.前端傳過來時間戳,Controller裡面直接寫實體就行.如果寫的實體里一個欄位,那也用long,然後自己new Date(long),總之跨了不同的范圍,就統一成long時間戳.
10. 在java的程序里date類型怎麼比較大小呀
有兩個方法:
方法一:
兩個Date類型的變數可以通過compareTo方法來比較。此方法的描述是這樣的:如果參數 Date 等於此 Date,則返回值 0;如果此 Date 在 Date 參數之前,則返回小於 0 的值;如果此 Date 在 Date 參數之後,則返回大於 0 的值。
(10)java日期類型擴展閱讀:
Date類可以在java.util包中找到,用一個long類型的值表示一個指定的時刻。它的一個有用的構造函數是Date(),它創建一個表示創建時刻的對象。
getTime()方法返回Date對象的long值。在下面的程序中,我使用Date()構造函數創建一個表示程序運行時刻的對象,並且利用getTime()方法找到這個日期代表的毫秒數量:
import java.util.*;
public class Now {
public static void main(String[] args) {
Date now = new Date();
long nowLong = now.getTime();
System.out.println("Value is " + nowLong);
}
}