教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢(xún)/投訴熱線(xiàn):400-618-4000

LocalTime?類(lèi)的使用方法

更新時(shí)間:2021年08月31日13時(shí)40分 來(lái)源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

LocalTime類(lèi)用來(lái)表示時(shí)間,通常表示的是小時(shí)、分鐘、秒。與LoalDatle類(lèi)一樣,該類(lèi)不能代表時(shí)間線(xiàn)上的即時(shí)信息,只是時(shí)間的描述。在LocalTime類(lèi)中提供了獲取時(shí)間對(duì)象的方法,與LoalDate用法類(lèi)似,這里不再列舉。

同時(shí),LocalTime類(lèi)也提供了與日期類(lèi)相對(duì)應(yīng)的時(shí)間格式化、增減時(shí)分秒等常用方法,這些方法與日期類(lèi)相對(duì)應(yīng),這里不再詳細(xì)列舉。下面通過(guò)一個(gè)案例來(lái)學(xué)習(xí)LocalTime類(lèi)的方法,如文件5-22所示。

文件5-22 Example22.java

import java.Time.format.DateTimeFormatter;

public class Example22

public static void main (String[] args) {

//獲取當(dāng)前時(shí)間,包含毫秒數(shù)

LocalTime time = LocalTime.now () ;

LocalTime of = LocalTime.of (9,23,23);

System.out.println("從LocalTime獲取的小時(shí)為: "+time.getHour() );

System. out.println ("將獲取到的Loacaltime實(shí)例格式化為: "十


time. format (DateTimeFormatter. ofPattern (HH:mm:ss") ) )

System.out.println("判斷時(shí)間of是否在now之前,+of.isBefore (time)

System.out.printin ("將時(shí)間字符串解析為時(shí)間對(duì)象后為:“+
LocalTime.parse(“12:15:30”) 

System.out.println ("從LocalTime獲取當(dāng)前時(shí)間,不包含毫秒數(shù): "+

time.WithNano(0) );

文件5-22中調(diào)用了幾個(gè)LocalTime的方法。需要注意的是,當(dāng)使用parse ( )方法解析字符串時(shí),該字符串要符合默認(rèn)的時(shí)、分、秒格式要求。通過(guò)文件5-22可以看出,LocalTime類(lèi)的方法的使用與LocalDate基本一樣。

LocalDateTime類(lèi)是LocalDate類(lèi)與LocalTime類(lèi)的綜合,它既包含日期,也包含時(shí)間,通過(guò)查看API可以知道,LocalDateTime類(lèi)中的方法包含了LocalDate類(lèi)與LocalTime類(lèi)的方法。

需要注意的是,LocalDateTime默認(rèn)的格式是2020-02-29T21:23:26.774, 這可能與人們經(jīng)常使用的格式不太符合,所以它經(jīng)常與DateTimeFormatter一起使用指定格式,除了LocalDate與LocalTime類(lèi)中的方法外,還額外提供了轉(zhuǎn)換的方法。下面通過(guò)一個(gè)案例來(lái)學(xué)習(xí)LocalDateTime 類(lèi)中特有的方法,如文件5-23所示。

文件5-23 Example23.java

import java.time.LocalDateTime;

import java.time.format.DateTimeFormatter;

public class Example23

   public static void main(String[] args) {

// 獲取當(dāng)前年月日時(shí)分秒

LocalDateTime now = LocalDateTime .now () ;

out.println ("獲取的當(dāng)前日期時(shí)間為: "+now);

system.out.println("將目標(biāo)LocalDateTime轉(zhuǎn)換為相應(yīng)的LocalDate實(shí)例:"+

now. toLocalTime () ) ;

//指定格式

DateTimeFormatter ofPattern = DateTimeFormatter.ofPattern

("yyyy年mm月dd日hh時(shí)mm分ss秒”)

System.out.println"(格式化后的日期時(shí)間為: "+now.format(ofPattern) );

在文件5-3中,第6行代碼定義了一個(gè)名稱(chēng)為now的LocalDateTime實(shí)例,第7行代碼直接打印當(dāng)前日期now,第8~9行代碼使用LocalDateTime的toLocalDate( )方法將now轉(zhuǎn)換為相應(yīng)的LocalDate實(shí)例,第10~11行代碼使用toLocalTime( )方法將now轉(zhuǎn)換為相應(yīng)的LocalTime 實(shí)例,第13~14行代碼使用DateTimeFormatter的ofPattern( )方法將時(shí)間格式指定為“yyy 年mm月dd日hh時(shí)mm分ss秒”,第15行代碼使用LocalDateTime的format( )方法將now的時(shí)間按指定格式打印。




猜你喜歡:

File類(lèi)中常用的操作方法

JDK8新增的日期與時(shí)間類(lèi)有多少種?常用類(lèi)操作演示

什么是IO流?怎樣區(qū)分不同種類(lèi)的IO流?

傳智教育Java開(kāi)發(fā)培訓(xùn)

0 分享到:
和我們?cè)诰€(xiàn)交談!