作者 | 棧長
本文經(jīng)授權(quán)轉(zhuǎn)載自Java技術(shù)棧(ID:javastack)
在Java技術(shù)棧微信群里看到一張圖,說是剛寫完這段下面這段代碼就被開除了。
開除的原因是因?yàn)闆]寫注釋嗎?
顯然不是,休眠的邏輯,大家都懂,不需要寫注釋,你注釋寫休眠 1 天也沒意義啊。
這個(gè)程序員的思維不是一般的牛啊,獲取下一天的日期,居然要休眠等到下一天再獲取,欲哭無淚。
再來看下加強(qiáng)版的,獲取未來幾天的日期。
/**
* 獲取未來幾天的日期
* @param days 指定的天數(shù)
* @author 微信公眾號(hào):Java技術(shù)棧
* @return
*/
public static Date getNextDays(int days){
try {
// 休眠指定的天數(shù)
Thread.sleep(days * 24 * 60 * 60 * 1000);
} catch (InterruptedException e) {
e.printStackTrace;
}
// 休眠結(jié)束后返回日期
return new Date;
}
寫完,已笑暈在廁所。
想離職找不到借口?
那還不容易,哥送你這段加強(qiáng)版,復(fù)制這段代碼,提交打包測試上線,坐等開除。
說了這么多,那正確的獲取未來的日期的姿勢是什么呢?
public static Date getNextDays(int days) {
Calendar c = Calendar.getInstance;
c.setTime(new Date);
c.add(Calendar.DATE, days);
return c.getTime;
}
建議使用 Apache 的 commons-lang 工具類,沒有必要重復(fù)造輪子,還沒別人造得好。
org.apache.commons.lang3.time.DateUtils#addDays
原理也是使用了 Java 中的 Calendar 類來處理的。
千人盛會(huì)臨近!距離BDTC 2019開幕僅剩5天!
12月5-7日,2019中國大數(shù)據(jù)技術(shù)大會(huì)(BDTC 2019),三天超強(qiáng)技術(shù)峰會(huì),百位頂尖技術(shù)專家,Keynote+13大干貨技術(shù)專場,燃燒你的小宇宙!