日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

java时间中间加横杠方法_知识点:java一些方法会有横线?以Date 过期方法为例...

發(fā)布時(shí)間:2025/3/15 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java时间中间加横杠方法_知识点:java一些方法会有横线?以Date 过期方法为例... 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

原因:他們的開(kāi)發(fā)者在升級(jí)方法后,添加了@Deprecated注釋,

目的是為了提醒我們,這個(gè)方法現(xiàn)在已經(jīng)有新的方法了,不建議繼續(xù)使用!

比如:

JAVA中Date的tolocalstring為什么不建議被使用

因?yàn)槟莻€(gè)方法被別的方法取代了。

Java中的日期和時(shí)間處理方法

Date類(lèi)(官方不再推薦使用,官方解釋Date類(lèi)不利于國(guó)際化,推薦使用Calendar類(lèi))

Calendar類(lèi)

DateFormat類(lèi) 使用此類(lèi)來(lái)時(shí)間初始化

Date類(lèi)

Date 表示特定的瞬間,精確到毫秒。

在 JDK 1.1 之前,類(lèi) Date 有兩個(gè)其他的函數(shù)。它允許把日期解釋為年、月、日、小時(shí)、分鐘和秒值。它也允許格式化和解析日期字符串。不過(guò),這些函數(shù)的 API 不易于實(shí)現(xiàn)國(guó)際化。從 JDK 1.1 開(kāi)始,應(yīng)該使用 Calendar 類(lèi)實(shí)現(xiàn)日期和時(shí)間字段之間轉(zhuǎn)換,使用 DateFormat 類(lèi)來(lái)格式化和解析日期字符串。Date 中的相應(yīng)方法已廢棄(查閱自API文檔)

Calendar類(lèi)

Calendar 類(lèi)是一個(gè)抽象類(lèi),它為特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日歷字段之間的轉(zhuǎn)換提供了一些方法,并為操作日歷字段(例如獲得下星期的日期)提供了一些方法。瞬間可用毫秒值來(lái)表示,它是距歷元(即格林威治標(biāo)準(zhǔn)時(shí)間 1970 年 1 月 1 日的 00:00:00.000,格里高利歷)的偏移量。

該類(lèi)還為實(shí)現(xiàn)包范圍外的具體日歷系統(tǒng)提供了其他字段和方法。這些字段和方法被定義為 protected。

與其他語(yǔ)言環(huán)境敏感類(lèi)一樣,Calendar 提供了一個(gè)類(lèi)方法 getInstance,以獲得此類(lèi)型的一個(gè)通用的對(duì)象。Calendar 的 getInstance 方法返回一個(gè) Calendar 對(duì)象,其日歷字段已由當(dāng)前日期和時(shí)間初始化:

Calendar rightNow = Calendar.getInstance();//獲得當(dāng)前時(shí)間

示例:

1 import java.util.Calendar;2 import java.util.Date;3 //記住導(dǎo)報(bào)的時(shí)候 是java.util!而不是java.sql包

4 public classLearnTimeDemo {5 public static voidmain(String[] args) {6 long TimeNow =System.currentTimeMillis();7 //獲得系統(tǒng)時(shí)間,一般用long類(lèi)型的,得到此事件,currentTimeMillis()方法精確到毫秒

8 System.out.println("此刻時(shí)間"+TimeNow);9 //輸出為long類(lèi)型的語(yǔ)言,機(jī)器能讀懂的語(yǔ)言

10 Date date=newDate(TimeNow);11 //用Date類(lèi)來(lái)轉(zhuǎn)化這個(gè)時(shí)間

12 System.out.println("轉(zhuǎn)化的時(shí)間"+date);13 Calendar calendar=Calendar.getInstance();14 //獲得此刻的時(shí)間

15 System.out.println("Calendar獲得的時(shí)間"+calendar.getTime());16

17 }18

19 }

輸出:

此刻時(shí)間1527040419935

轉(zhuǎn)化的時(shí)間Wed May23 09:53:39 CST 2018Calendar獲得的時(shí)間Wed May23 09:53:39 CST 2018

相信你已經(jīng)知道他們的基本概念了,下面我們來(lái)進(jìn)一步研究一下。

進(jìn)一步研究:

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;public classDemo2 {public static voidmain(String[] args) {

Date date1=newDate(System.currentTimeMillis());

Calendar calendar=Calendar.getInstance();//獲得系統(tǒng)時(shí)間//格式化時(shí)間格式

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

SimpleDateFormat simp02=new SimpleDateFormat("yyyy-MM-dd");

System.out.println("原本的date"+date1);

System.out.println("初始化的date類(lèi)型"+simp01.format(date1));

System.out.println("初始化的date類(lèi)型"+simp02.format(date1));

System.out.println("Calendar類(lèi)獲得的時(shí)間"+calendar.get(Calendar.YEAR)+":"+(int)((calendar.get(Calendar.MONTH))+1)+":"+calendar.get(Calendar.DAY_OF_MONTH));//一般月份會(huì)少一,所以月份需要+1,每一個(gè)get獲得的是字符串,所以需要強(qiáng)轉(zhuǎn)為int

}

}

輸出:

原本的dateWed May 23 09:56:29 CST 2018初始化的date類(lèi)型2018-05-23 09:56:29初始化的date類(lèi)型2018-05-23Calendar類(lèi)獲得的時(shí)間2018:5:23

最后,我們研究下Calendar:

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.TimeZone;public classDemo3 {public static voidmain(String[] args) {

Calendar c= Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00"));//獲取東八區(qū)時(shí)間

int year = c.get(Calendar.YEAR);//獲取年

int month = c.get(Calendar.MONTH) + 1;//獲取月份,會(huì)少一天。所以+1

int day = c.get(Calendar.DAY_OF_MONTH);//獲取當(dāng)前天數(shù)

int t = c.get(Calendar.HOUR_OF_DAY);//獲取當(dāng)前小時(shí)

int m = c.get(Calendar.MINUTE);//獲取當(dāng)前分鐘

int se = c.get(Calendar.SECOND);//獲取當(dāng)前秒

SimpleDateFormat s=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//格式化時(shí)間格式

String Now =s.format(c.getTime());//獲得當(dāng)前日期 format(Obj):格式化一個(gè)對(duì)象以生成一個(gè)字符串。

System.out.println("當(dāng)前時(shí)間:" + year + "-" + month + "-"+ day + " "+t + ":" + m +":" +se);

System.out.println("當(dāng)前日期Now:" +Now);

}

}

輸出:

當(dāng)前時(shí)間:2018-5-23 9:58:13當(dāng)前日期Now:2018-05-23 09:58:13

那么我們可以不嚴(yán)謹(jǐn)?shù)貋?lái)改下面的代碼了,存入當(dāng)前時(shí)間:

persInfoAlert.setSubmitDate(new Date().toLocaleString());

(注:toLocalString 會(huì)有橫線,這是為什么呢)

可以改為:

persInfoAlert.setSubmitDate(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00")).getTime()));

by:一只阿木木

總結(jié)

以上是生活随笔為你收集整理的java时间中间加横杠方法_知识点:java一些方法会有横线?以Date 过期方法为例...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。