查看原文
其他

刚写完这段代码,就被开除了……

脚本之家 2022-04-23

The following article is from Java技术栈 Author 栈长

 关注
脚本之家
”,与百万开发者在一起

作者 | 栈长

来源 | Java技术栈(ID:javastack)

最近在Java技术栈微信群里看到一张图,说是刚写完这段下面这段代码就被开除了。


开除的原因是因为没写注释吗?

显然不是,休眠的逻辑,大家都懂,不需要写注释,你注释写休眠 1 天也没意义啊。。。

这个程序员的思维不是一般的牛啊,获取下一天的日期,居然要休眠等到下一天再获取,欲哭无泪。。。

再来看下加强版的,获取未来几天的日期。。。

/**
 * 获取未来几天的日期
 * @param days 指定的天数
 * @author 微信公众号:Java技术栈
 * @return
 */

public static Date getNextDays(int days){
    try {
        // 休眠指定的天数
        Thread.sleep(days * 24 * 60 * 60 * 1000);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    // 休眠结束后返回日期
    return new Date();
}

写完,已笑晕在厕所。。。

想离职找不到借口?

那还不容易,哥送你这段加强版,复制这段代码,提交打包测试上线,坐等开除。

说了这么多,那正确的获取未来的日期的姿势是什么呢?

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 工具类,没有必要重复造轮子,还没别人造得好。。。

org.apache.commons.lang3.time.DateUtils#addDays

原理也是使用了 Java 中的 Calendar 类来处理的。

好老板都是别人家的!
↓↓↓

参与视频号留言互动
每天送出 
红包/编程书籍

  推荐阅读:

Java8 的这个特性,用起来真的很爽!

盘点 Java 创建对象的 x 操作

学习 Java 语言,你必须知道的 Java 简史

这些Java9 超牛的新特性,你竟然还没用过?

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存