最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JAVA時(shí)間戳-Calendar類(lèi)使用(包括set,get,add方法)

 更新時(shí)間:2024年04月15日 09:56:25   作者:冰冰很社恐  
這篇文章主要介紹了JAVA時(shí)間戳-Calendar類(lèi)使用(包括set,get,add方法),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Calendar 類(lèi)是一個(gè)抽象類(lèi),它為特定時(shí)間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日歷字段之間的轉(zhuǎn)換提供了一些方法,并為操作日歷字段(例如獲得下星期的日期)提供了一些方法。

瞬間可用毫秒值來(lái)表示,它是距歷元(即格林威治標(biāo)準(zhǔn)時(shí)間 1970 年 1 月 1 日的 00:00:00.000,格里高利歷)的偏移量。

一、Calendar類(lèi)

想要取得時(shí)間,首先使用Calendar的getInstance()取得一個(gè)Calendar的實(shí)例,例如:

Calendar c = Calendar.getInstance();

創(chuàng)建 Calendar 對(duì)象不能使用 new 關(guān)鍵字,因?yàn)?Calendar 類(lèi)是一個(gè)抽象類(lèi),但是它提供了一個(gè) getInstance() 方法來(lái)獲得 Calendar類(lèi)的對(duì)象。

getInstance() 方法返回一個(gè) Calendar 對(duì)象,其日歷字段已 由當(dāng)前日期和時(shí)間初始化。

Calendar 類(lèi)中定義了許多常量,分別表示不同的意義。

  • Calendar.YEAR:年份。
  • Calendar.MONTH:月份。
  • Calendar.DATE:日期。
  • Calendar.DAY_OF_MONTH:日期,和上面的字段意義完全相同。
  • Calendar.HOUR:12小時(shí)制的小時(shí)。
  • Calendar.HOUR_OF_DAY:24 小時(shí)制的小時(shí)。
  • Calendar.MINUTE:分鐘。 Calendar.SECOND:秒。
  • Calendar.DAY_OF_WEEK:星期幾。

二、Calendar類(lèi)的常用方法

2.1 get()方法

獲取值

cal.get(Calendar.YEAR);//年
cal.get(Calendar.MONTH) + 1;//月(Calendar在月份上的常數(shù)值從0開(kāi)始的)
cal.get(Calendar.DATE);//日
cal.get(Calendar.HOUR_OF_DAY);//時(shí)
cal.get(Calendar.MINUTE);//分
cal.get(Calendar.SECOND);//秒
cal.get(Calendar.DAY_OF_WEEK);//星期(Locale.ENGLISH情況下,周日是1)
cal.get(Calendar.DAY_OF_WEEK);//獲取當(dāng)前是一周中的第幾天(從0開(kāi)始計(jì)算)
cal.get(Calendar.DAY_OF_MONTH);//獲取當(dāng)前是一月的第幾天
cal.get(Calendar.DAY_OF_YEAR);//獲取當(dāng)前時(shí)一年中的第幾天

示例代碼如下:

public class CalandarTest {
    public static void main(String[] args) {
        Calendar cal=Calendar.getInstance();
        //獲取當(dāng)前年
        int year= cal.get(Calendar.YEAR);
        System.out.println(year);
        //獲取當(dāng)前月(從0開(kāi)始計(jì)算)
        int month= cal.get(Calendar.MONTH);
        System.out.println(month);
        //獲取當(dāng)前日
        int date= cal.get(Calendar.DATE);
        System.out.println(date);
        //獲取當(dāng)時(shí)小時(shí)
        int hour= cal.get(Calendar.HOUR);
        System.out.println(hour);
        //獲取當(dāng)前分鐘數(shù)
        int minute= cal.get(Calendar.MINUTE);
        System.out.println(minute);
        //獲取當(dāng)前秒數(shù)
        int second= cal.get(Calendar.SECOND);
        System.out.println(second);
        //獲取當(dāng)前是一周中的第幾天(從0開(kāi)始計(jì)算)
        int wday= cal.get(Calendar.DAY_OF_WEEK);
        System.out.println(wday);
        //獲取當(dāng)前是一月的第幾天
        int mday= cal.get(Calendar.DAY_OF_MONTH);
        System.out.println(mday);
        //獲取當(dāng)前時(shí)一年中的第幾天
        int yday= cal.get(Calendar.DAY_OF_YEAR);
        System.out.println(yday);
    }
}

2.2 set()方法

設(shè)置值(返回為日期對(duì)象)

cal.set(2023, 7, 15, 9, 44, 51);//年月日時(shí)分秒(月份0代表1月)
cal.set(Calendar.YEAR, 2023);//年
cal.set(Calendar.MONTH, 7);//月(月份0代表1月)
cal.set(Calendar.DATE, 11);//日
cal.set(Calendar.HOUR_OF_DAY, 15);//時(shí)
cal.set(Calendar.MINUTE, 33);//分
cal.set(Calendar.SECOND, 32);//秒

示例代碼如下:

public class CalandarTest {
    public static void main(String[] args) {
        Calendar cal=Calendar.getInstance();
        //設(shè)置當(dāng)前年
        cal.set(Calendar.YEAR,2022);
        System.out.printf("%tY%n",cal);
        //設(shè)置當(dāng)前月(從0開(kāi)始計(jì)算)
        cal.set(Calendar.MONTH,5);
        System.out.printf("%tm%n",cal);
        //設(shè)置當(dāng)前日
        cal.set(Calendar.DATE,5);
        System.out.printf("%td%n",cal);
        //設(shè)置當(dāng)時(shí)小時(shí)
        cal.set(Calendar.HOUR,14);
        System.out.printf("%tl%n",cal);
        //設(shè)置當(dāng)前分鐘數(shù)
        cal.set(Calendar.MINUTE,50);
        System.out.printf("%tM%n",cal);
        //設(shè)置當(dāng)前秒數(shù)
        cal.set(Calendar.SECOND,12);
        System.out.printf("%tS%n",cal);
    }
}

輸出結(jié)果如下:

2.3 add()方法

運(yùn)算值(在獲取的當(dāng)前時(shí)間進(jìn)行運(yùn)算,返回值為日期對(duì)象)

cal.add(Calendar.YEAR, 1);//年
cal.add(Calendar.MONTH, 1);//月
cal.add(Calendar.DATE, 1);//日
cal.add(Calendar.HOUR_OF_DAY, -1);//時(shí)
cal.add(Calendar.MINUTE, 1);//分
cal.add(Calendar.SECOND, 1);//秒
cal.add(Calendar.DATE, 7);//周

示例代碼如下:

public class CalandarTest {
    public static void main(String[] args) {
        Calendar cal=Calendar.getInstance();
        //以當(dāng)前年計(jì)算
        cal.add(Calendar.YEAR,2022);
        System.out.printf("%tY%n",cal);
        //以當(dāng)前月(月份不從0開(kāi)始計(jì)算)計(jì)算
        cal.add(Calendar.MONTH,5);
        System.out.printf("%tm%n",cal);
        //以當(dāng)前日計(jì)算
        cal.add(Calendar.DATE,-5);
        System.out.printf("%td%n",cal);
        //以當(dāng)時(shí)小時(shí)小時(shí)
        cal.add(Calendar.HOUR_OF_DAY,14);
        System.out.printf("%tl%n",cal);
        //以當(dāng)前分鐘數(shù)計(jì)算
        cal.add(Calendar.MINUTE,-50);
        System.out.printf("%tM%n",cal);
        //以當(dāng)前秒數(shù)計(jì)算
        cal.add(Calendar.SECOND,12);
        System.out.printf("%tS%n",cal);
        
    }
}

輸出結(jié)果如下:

三、格式化日期輸出 

Calendar類(lèi)返回的時(shí)間類(lèi)型為對(duì)象類(lèi)型,為了方便輸出展示,在輸出時(shí)可以將日期格式化。

轉(zhuǎn)換符說(shuō)明
%tH小時(shí)(00-23)
%tL小時(shí)(01-12)
%tk小時(shí)(0-23)
%tM分鐘(00-29)
%tS秒(00-59)
%tL毫秒(000-999)
%tN微秒(000000000-999999999)
%tp當(dāng)前語(yǔ)言環(huán)境下的上午/下午
%ts從1970-01-01 00:00:00到現(xiàn)在的秒
%tQ從1970-01-01 00:00:00到現(xiàn)在的毫秒
%tF年-月-日
%tT時(shí)-分-秒
%tD月/日/年
%tc全部時(shí)間日期
%tR時(shí)分
%tr時(shí)分秒PM

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中sharding-jdbc按年月分片的示例代碼

    Java中sharding-jdbc按年月分片的示例代碼

    本文主要介紹了Java中sharding-jdbc按年月分片的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 關(guān)于Java8 parallelStream并發(fā)安全的深入講解

    關(guān)于Java8 parallelStream并發(fā)安全的深入講解

    這篇文章主要給大家介紹了關(guān)于Java8 parallelStream并發(fā)安全的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-10-10
  • 詳解基于MVC的數(shù)據(jù)查詢(xún)模塊進(jìn)行模糊查詢(xún)

    詳解基于MVC的數(shù)據(jù)查詢(xún)模塊進(jìn)行模糊查詢(xún)

    這篇文章主要介紹了Java基于MVC的數(shù)據(jù)查詢(xún)模塊進(jìn)行模糊查詢(xún),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • SpringBoot中的事務(wù)配置管理詳解

    SpringBoot中的事務(wù)配置管理詳解

    這篇文章主要介紹了SpringBoot中的事務(wù)配置管理詳解,Spring Boot 默認(rèn)的事務(wù)規(guī)則是遇到運(yùn)行異常(RuntimeException)和程序錯(cuò)誤(Error)才會(huì)回滾,但是拋出SQLException就無(wú)法回滾了,需要的朋友可以參考下
    2024-01-01
  • 解析Java并發(fā)Exchanger的使用

    解析Java并發(fā)Exchanger的使用

    Exchanger是java 5引入的并發(fā)類(lèi),Exchanger顧名思義就是用來(lái)做交換的。這里主要是兩個(gè)線程之間交換持有的對(duì)象。當(dāng)Exchanger在一個(gè)線程中調(diào)用exchange方法之后,會(huì)等待另外的線程調(diào)用同樣的exchange方法。兩個(gè)線程都調(diào)用exchange方法之后,傳入的參數(shù)就會(huì)交換。
    2021-06-06
  • java中常用的阻塞隊(duì)列與非阻塞隊(duì)列詳解

    java中常用的阻塞隊(duì)列與非阻塞隊(duì)列詳解

    這篇文章主要介紹了java中常用的阻塞隊(duì)列與非阻塞隊(duì)列用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • 基于JDBC訪問(wèn)MySql公共方法實(shí)例解析

    基于JDBC訪問(wèn)MySql公共方法實(shí)例解析

    這篇文章主要介紹了基于JDBC訪問(wèn)MySql公共方法實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Java讀取properties配置文件的實(shí)現(xiàn)過(guò)程

    Java讀取properties配置文件的實(shí)現(xiàn)過(guò)程

    這篇文章主要介紹了Java讀取properties配置文件的實(shí)現(xiàn)過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2026-03-03
  • IDEA創(chuàng)建maven項(xiàng)目時(shí)在tomcat運(yùn)行瀏覽器404的問(wèn)題

    IDEA創(chuàng)建maven項(xiàng)目時(shí)在tomcat運(yùn)行瀏覽器404的問(wèn)題

    這篇文章主要介紹了IDEA創(chuàng)建maven項(xiàng)目時(shí)在tomcat運(yùn)行瀏覽器404的問(wèn)題及解決方法,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Spring中的REST分頁(yè)的實(shí)現(xiàn)代碼

    Spring中的REST分頁(yè)的實(shí)現(xiàn)代碼

    本文將介紹在REST API中實(shí)現(xiàn)分頁(yè)的基礎(chǔ)知識(shí)。我們將專(zhuān)注于使用Spring Boot和Spring Data 在Spring MVC中構(gòu)建REST分頁(yè),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01

最新評(píng)論

珠海市| 务川| 舟曲县| 新余市| 永顺县| 通许县| 金山区| 遵义县| 福建省| 扶绥县| 巩留县| 洛宁县| 滨州市| 临洮县| 南靖县| 长乐市| 保德县| 张家港市| 同德县| 怀仁县| 龙游县| 抚松县| 通辽市| 峨眉山市| 长顺县| 沂南县| 余姚市| 阿拉尔市| 天峨县| 乡宁县| 深圳市| 杭锦旗| 天全县| 兴和县| 玉山县| 碌曲县| 萝北县| 惠东县| 太谷县| 建德市| 九江县|