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

java日期相關(guān)類實例詳解

 更新時間:2017年10月27日 09:25:29   作者:FlyingZCC  
這篇文章主要介紹了java日期相關(guān)類實例詳解,小編覺得還是挺不錯的,這里分享給大家,供需要的朋友參考。

一、Date類

類 Date 表示特定的瞬間,精確到毫秒。用距離1970年1月1日00:00:00的毫秒數(shù)(long)類型來表示一個特定的時間點,該值可正可負(fù)。

Date類中很多方法已經(jīng)過時,使用Calendar來替代。

常用方法有

long getTime()
void setTime(long time)

public class T01Date { 
  public static void main(String[] args) { 
    //getTime():返回的時間是距離1970年的毫秒數(shù).值不受setTime()的影響 
    //date值受setTime()的影響 
    Date date=new Date(); 
    long current=date.getTime(); 
    System.out.println(current);//1472002479966 
    System.out.println(date);//Wed Aug 24 09:34:39 CST 2016 
    long time=current+1000*60*60*24;//時間設(shè)置為明日此時 
    date.setTime(time); 
    System.out.println(date.getTime());//1472002479966 
    System.out.println(current);//1472002479966 
    System.out.println(date);// Thu Aug 25 09:34:39 CST 2016 
  } 
} 

二、SimpleDateFormat

SimpleDateFormat根據(jù)特定的日期格式在Date和字符串之間轉(zhuǎn)換

常用方法

String format(Date date):將日期按照指定格式轉(zhuǎn)換成字符串
Date parse(String str):將字符串按照指定格式轉(zhuǎn)換成Date

可以用來指定格式的字符

/** 
 * java.text.SimpleDateFormat 
 * 該類可以根據(jù)一個指定的日期格式將Date于String 
 * 之間相互轉(zhuǎn)換 
 * @author zc 
 * 
 */ 
public class T02SimpleDateFormat { 
  public static void main(String[] args) throws ParseException { 
    Date now =new Date(); 
    //2016-08-12 09:55:23 
    //yyyy-MM-dd hh:ss:mm 
    SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 hh時ss分mm秒"); 
    String str = sdf.format(now); 
    System.out.println(str); 
    //a 居然能區(qū)分上下午漢字 
    String strDate="2012年12月20日下午12點20分30秒"; 
    SimpleDateFormat sdf2=new SimpleDateFormat("yyyy年MM月dd日ahh點ss分mm秒"); 
    Date date=sdf2.parse(strDate); 
    System.out.println(date); 
  } 
} 

三、Calendar

java.util.Calendar是抽象類,主要用來對時間分量進(jìn)行計算。

常用方法

(1)Date和Calendar之間的轉(zhuǎn)換

  //默認(rèn)創(chuàng)建出來的Calendar的實現(xiàn)類表示當(dāng)前系統(tǒng)時間 
    Calendar c=Calendar.getInstance(); 
    //將Calendar轉(zhuǎn)換為Date 
    Date date=c.getTime(); 
    //Date->Calendar 
    /* 
     * void setTime(Date date) 
     * 該方法可以使當(dāng)前Calendar表示給定的 
     * Date所表示的時間 
     * */ 
    c.setTime(date); 
  } 
} 

(2)getInstance()方法

Calendar是抽象類,其提供了一個工廠方法:Calendar getInstance()用來獲取Calendar類型的實例

(3)get(int field)方法獲取時間分量

import java.util.Calendar; 
/** 
 * Calendar提供了獲取各個時間分量的值的方法 
 * @author zc 
 */ 
public class T05Calendar2 { 
  public static void main(String[] args) { 
    Calendar c=Calendar.getInstance(); 
    //獲取年 
    int year=c.get(Calendar.YEAR); 
    System.out.println("year:"+year);//2016 
    //獲取月:月從0開始!!!,0表示一月 
    int month=c.get(Calendar.MONTH); 
    System.out.println("month:"+month);//7 
    /* 
     * 和天相關(guān)的時間分量 
     * DATE,DAY_OF_MONTH:是一致的,表示月中的第幾天 
     * DAY_OF_YEAR:表示年中的天 
     * DAY_OF_WEEK:表示周中的天 
     * 
     * */ 
    System.out.println(c.get(Calendar.DATE)); 
    System.out.println(c.get(Calendar.DAY_OF_MONTH)); 
    System.out.println(c.get(Calendar.DAY_OF_YEAR)); 
    System.out.println(c.get(Calendar.DAY_OF_WEEK)); 
    int dow=c.get(Calendar.DAY_OF_WEEK)-1; 
    String[] data={"日","一","二","三","四","五","六"}; 
    System.out.println("周"+data[dow]); 
    //獲取小時,分鐘,秒   HOUR_OF_DAY:24小時  HOUR:12小時  
    System.out.println(c.get(Calendar.HOUR_OF_DAY));//14 
    System.out.println(c.get(Calendar.HOUR));//2 
    System.out.println(c.get(Calendar.MINUTE)); 
    System.out.println(c.get(Calendar.SECOND)); 
  } 
} 

(4)set()方法設(shè)置時間分量

/** 
 * 設(shè)置時間分量 
 * @author zc 
 * 
 */ 
public class T06Calendar3 { 
  public static void main(String[] args){ 
    //表示2008-08-08 20:08:08 
    //設(shè)置年 
    Calendar c=Calendar.getInstance(); 
    c.set(Calendar.YEAR,2008); 
    //設(shè)置月,月從0開始 
    c.set(Calendar.MONTH,Calendar.AUGUST); 
    //設(shè)置日 
    c.set(Calendar.DATE, 8); 
    //設(shè)置時 
    c.set(Calendar.HOUR_OF_DAY,20); 
    //設(shè)置分 
    c.set(Calendar.SECOND,8); 
    //設(shè)置秒 
    c.set(Calendar.MINUTE,8); 
    System.out.println(c.getTime()); 
    //?。。≡O(shè)置的時間分量超出后,會自行進(jìn)位 
  } 
} 

(5)add()方法在當(dāng)前時間分量基礎(chǔ)上修改時間分量

(6)getActualMaximum()獲取某個時間分量所允許的最大值

/** 
 * 獲取某個時間分量所允許的最大值 
 * @author zc 
 */ 
public class T07Calendar4 { 
  public static void main(String[] args) { 
    Calendar c=Calendar.getInstance(); 
    //查看當(dāng)月共多少天 
    int days=c.getActualMaximum(Calendar.DAY_OF_MONTH); 
    System.out.println(days); 
    //查看今年多少天 
    int doy=c.getActualMaximum(Calendar.DAY_OF_YEAR); 
    System.out.println(doy); 
    int t=c.getActualMaximum(Calendar.MINUTE); 
    System.out.println(t); 
  } 
} 

四、Date、SimpleDateFormat和Calendar的一個綜合實例

@Test 
  public void test01() throws ParseException{ 
    //要求用戶輸入一個日期,計算后,指定格式輸出日期 
    /*String--SimpleDateFormat()-->Date 
    Date-->Calendar 
    使用Calendar進(jìn)行相應(yīng)計算 
    Calendar-->Date 
    Date--SimpleDateFormat-->String 
    */ 
    String input="2013-03-26"; 
     
    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); 
    Date date=sdf.parse(input); 
    Calendar c=Calendar.getInstance(); 
    //set(),與add() 
    c.setTime(date); 
    c.add(Calendar.YEAR,1); 
    c.set(Calendar.MONTH,0); 
    c.set(Calendar.DAY_OF_WEEK,1); 
     
    date=c.getTime(); 
    SimpleDateFormat sdf2=new SimpleDateFormat("yyyy年MM月dd分hh時ss分mm秒"); 
    String strTime=sdf2.format(date); 
    System.out.println(strTime); 
  } 

總結(jié)

以上就是本文關(guān)于java日期相關(guān)類實例詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Java開發(fā)基礎(chǔ)日期類代碼詳解Java編程實現(xiàn)時間和時間戳相互轉(zhuǎn)換實例等,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • Spring Boot如何使用Undertow代替Tomcat

    Spring Boot如何使用Undertow代替Tomcat

    這篇文章主要介紹了Spring Boot如何使用Undertow代替Tomcat,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • java 實現(xiàn)下壓棧的操作(能動態(tài)調(diào)整數(shù)組大小)

    java 實現(xiàn)下壓棧的操作(能動態(tài)調(diào)整數(shù)組大小)

    這篇文章主要介紹了java 實現(xiàn)下壓棧的操作(能動態(tài)調(diào)整數(shù)組大小),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • TKMybatis的介紹和使用詳解

    TKMybatis的介紹和使用詳解

    TKMybatis 是基于 Mybatis 框架開發(fā)的一個工具,本文主要介紹了TKMybatis的介紹和使用詳解,內(nèi)部實現(xiàn)了對單表的基本數(shù)據(jù)操作,只需要簡單繼承 TKMybatis 提供的接口,就能夠?qū)崿F(xiàn)無需編寫任何 sql 即能完成單表操作,感興趣的可以了解一下
    2021-12-12
  • mongo分布式鎖Java實現(xiàn)方法(推薦)

    mongo分布式鎖Java實現(xiàn)方法(推薦)

    下面小編就為大家?guī)硪黄猰ongo分布式鎖Java實現(xiàn)方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • spring boot日志管理配置

    spring boot日志管理配置

    這篇文章主要介紹了spring boot日志管理配置的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • SpringBoot引入Redis報org.springframework.data.redis.core.RedisTemplate類找不到錯誤問題

    SpringBoot引入Redis報org.springframework.data.redis.core.RedisT

    這篇文章主要介紹了SpringBoot引入Redis報org.springframework.data.redis.core.RedisTemplate類找不到錯誤問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-09-09
  • 解決SpringBoot引用別的模塊無法注入的問題

    解決SpringBoot引用別的模塊無法注入的問題

    這篇文章主要介紹了解決SpringBoot引用別的模塊無法注入的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • 阿里規(guī)范:為何boolean類型變量命名禁用is開頭

    阿里規(guī)范:為何boolean類型變量命名禁用is開頭

    這篇文章主要給大家介紹了關(guān)于阿里規(guī)范:為何boolean類型變量命名禁用is開頭的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • java中你的項目應(yīng)該如何正確分層

    java中你的項目應(yīng)該如何正確分層

    這篇文章主要介紹了java中你的項目應(yīng)該如何正確分層,業(yè)務(wù)分層對于代碼規(guī)范是比較重要,決定著以后的代碼是否可復(fù)用,感興趣的可以了解一下
    2021-04-04
  • Java中private關(guān)鍵字詳細(xì)用法實例以及解釋

    Java中private關(guān)鍵字詳細(xì)用法實例以及解釋

    這篇文章主要給大家介紹了關(guān)于Java中private關(guān)鍵字詳細(xì)用法實例以及解釋的相關(guān)資料,在Java中private是一種訪問修飾符,它可以用來控制類成員的訪問權(quán)限,文中將用法介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01

最新評論

霍山县| 峡江县| 花垣县| 梨树县| 贞丰县| 延长县| 旬邑县| 湄潭县| 监利县| 财经| 道孚县| 静宁县| 大方县| 九台市| 泌阳县| 宁远县| 稻城县| 荔波县| 德州市| 仁怀市| 石林| 松阳县| 冷水江市| 嘉义市| 五常市| 昌平区| 邢台县| 仲巴县| 吉首市| 含山县| 关岭| 拜城县| 汉源县| 海林市| 泾川县| 濮阳市| 云林县| 平塘县| 扎兰屯市| 延吉市| 永善县|