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

java生成指定范圍的隨機(jī)日期

 更新時間:2017年12月01日 09:49:41   作者:喬巴大大  
這篇文章主要為大家詳細(xì)介紹了java生成指定范圍的隨機(jī)日期,具有一定的參考價值,感興趣的小伙伴們可以參考一下

有這樣一個需求:構(gòu)造一個方法,隨機(jī)生成1990-12-31 00:00 00到 2013-12-31 00:00:00之間任意一個時間點。
思路是這樣:在javaAPI中 Date類型和long類型很好轉(zhuǎn)化,所以我們可以把問題轉(zhuǎn)化為,求兩個long類型數(shù)之間的任意值。
同時需要了解java API中的:Math.round(double)  Math.random();  new Date(year,month,day); Calendar。

Math.random() 會隨機(jī)生成大于等于0小于1的隨機(jī)的double類型。

Math.round(double ) 需要傳入一個double類型,返回最接近這個double類型的long類型。

Calendar 是處理時間的工具類,如Date一樣Calendar的月份也是從0開始計算

具體代碼如下

public static String randomDateBetweenMinAndMax(){ 
    Calendar calendar = Calendar.getInstance(); 
    //注意月份要減去1 
    calendar.set(1990,11,31); 
    calendar.getTime().getTime(); 
    //根據(jù)需求,這里要將時分秒設(shè)置為0 
    calendar.set(Calendar.HOUR_OF_DAY, 0); 
    calendar.set(Calendar.MINUTE, 0); 
    calendar.set(Calendar.SECOND,0); 
    long min = calendar.getTime().getTime();; 
    calendar.set(2013,11,31); 
    calendar.set(Calendar.HOUR_OF_DAY,0); 
    calendar.set(Calendar.MINUTE,0); 
    calendar.set(Calendar.SECOND,0); 
    calendar.getTime().getTime(); 
    long max = calendar.getTime().getTime(); 
    //得到大于等于min小于max的double值 
    double randomDate = Math.random()*(max-min)+min; 
    //將double值舍入為整數(shù),轉(zhuǎn)化成long類型 
    calendar.setTimeInMillis(Math.round(randomDate)); 
    return calendar.getTime().toString(); 
  } 

如果要用Date類處理時間,需要注意,年是從1900開始計算所以要減去1900,月是從0開始計算所以要減去1,比如 new Date(2013,10,10) 得到的date對象表示的時間是3913年11月10日。

System.out.println(new Date(2013,10,10)); 

結(jié)果是:Mon Nov 10 00:00:00 CST 3913

把上面的問題稍微變一下,已知minDate和maxDate,要求把這個時間區(qū)間的每一天放入list。

public static void getDateBetweenMaxAndMin(){ 
    List<Date> list = new ArrayList<Date>(); 
    Calendar calendar = Calendar.getInstance(); 
    calendar.set(2010,10,10); 
    Date minDate = calendar.getTime(); //最小時間 
    calendar.set(2013,11,1); 
    Date maxDate = calendar.getTime();//最大時間 
    //計算兩個時間點相隔多少天 
    int totalDays = Ints.checkedCast((maxDate.getTime() - minDate.getTime()) / (1000 * 60 * 60 * 24)); 
    calendar.setTime(minDate); 
    calendar.set(Calendar.HOUR_OF_DAY,0); 
    calendar.set(Calendar.MINUTE,0); 
    calendar.set(Calendar.SECOND,0); 
    for(int i = 0;i<=totalDays;i++){ 
      if(i!=0){ 
        //天數(shù)加1 
        calendar.add(Calendar.DAY_OF_MONTH,1); 
      } 
      list.add(calendar.getTime()); 
    } 
  } 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java 工廠模式的講解及優(yōu)缺點的介紹

    java 工廠模式的講解及優(yōu)缺點的介紹

    這篇文章主要介紹了java 工廠模式的講解及優(yōu)缺點的介紹的相關(guān)資料, 簡單工廠模式,又稱為靜態(tài)工廠方法(Static Factory Method)模式,它屬于類創(chuàng)建型模式,需要的朋友可以參考下
    2017-08-08
  • java獲取百度網(wǎng)盤真實下載鏈接的方法

    java獲取百度網(wǎng)盤真實下載鏈接的方法

    這篇文章主要介紹了java獲取百度網(wǎng)盤真實下載鏈接的方法,涉及java針對URL操作及頁面分析的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • Java提取兩個字符串中的相同元素方法

    Java提取兩個字符串中的相同元素方法

    今天小編就為大家分享一篇Java提取兩個字符串中的相同元素方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • 圖解Springboot集成七牛云并實現(xiàn)圖片上傳功能過程

    圖解Springboot集成七牛云并實現(xiàn)圖片上傳功能過程

    在實際開發(fā)中 ,基本都會有應(yīng)用到文件上傳的場景,但隨著或多或少的需求問題,之前有在springboot上用過七牛云實現(xiàn)圖片上傳,今天因為某些原因又重新使用了下七牛云因此想總結(jié)下七牛云
    2021-11-11
  • Java實現(xiàn)圖片與Base64編碼互轉(zhuǎn)

    Java實現(xiàn)圖片與Base64編碼互轉(zhuǎn)

    這篇文章主要介紹了Java中實現(xiàn)圖片與Base64編碼互轉(zhuǎn)的方法,比較實用,需要的朋友可以參考下。
    2016-06-06
  • Java如何使用poi生成簡單word文檔并導(dǎo)出

    Java如何使用poi生成簡單word文檔并導(dǎo)出

    這篇文章主要介紹了Java如何使用poi生成簡單word文檔并導(dǎo)出問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • java使用Process調(diào)用exe程序及Process.waitFor()死鎖問題解決

    java使用Process調(diào)用exe程序及Process.waitFor()死鎖問題解決

    在編寫Java程序時,有時候我們需要調(diào)用其他的諸如exe,shell這樣的程序或腳本,下面這篇文章主要給大家介紹了關(guān)于java使用Process調(diào)用exe程序及Process.waitFor()死鎖問題解決的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • 使用Java實現(xiàn)DNS域名解析的簡單示例

    使用Java實現(xiàn)DNS域名解析的簡單示例

    這篇文章主要介紹了使用Java實現(xiàn)DNS域名解析的簡單示例,包括對一個動態(tài)IP主機(jī)的域名解析例子,需要的朋友可以參考下
    2015-10-10
  • idea 找不到符號或找不到包的幾種解決方法

    idea 找不到符號或找不到包的幾種解決方法

    這篇文章主要介紹了idea 找不到符號或找不到包的幾種解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Intellij IDEA中如何查看maven項目中所有jar包的依賴關(guān)系圖

    Intellij IDEA中如何查看maven項目中所有jar包的依賴關(guān)系圖

    這篇文章主要介紹了Intellij IDEA中如何查看maven項目中所有jar包的依賴關(guān)系圖,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05

最新評論

乃东县| 冷水江市| 内黄县| 大安市| 明光市| 安庆市| 靖宇县| 改则县| 仪征市| 扶风县| 潮安县| 石渠县| 广河县| 陇南市| 四子王旗| 黄陵县| 隆化县| 武城县| 阿拉善盟| 恩施市| 富宁县| 金寨县| 怀集县| 壶关县| 平山县| 诸暨市| 永川市| 辽源市| 淅川县| 建阳市| 扬中市| 津南区| 河北区| 泗洪县| 许昌县| 澜沧| 永州市| 太仓市| 特克斯县| 舞阳县| 台江县|