Java如何获取Date的“昨天”与“明天”示例代码

2017-11-19 00:17:51

最近在做项目的时候用到Date和Calendar比较多,而且用到的方式也比较全,突然想到一个问题,Java如何获取Date的"昨天"与"明天",也就是前一天和后一天呢?思考后写出了方法,想着万一以后用到,就总结出来,也方便有需要的朋友们参考借鉴,下面来一起看看吧。


相信大家在java中用到的最多的时间类莫过于 java.util.Date了,由于Date类中将getYear() , getMonth()等获取年、月、日的方法都废弃了,所以本文的问题要借助于Calendar来实现了,下面来直接看示例代码吧。

使用日历类:Calendar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
@Test
 public void dateTest() {
 Date today = new Date();
 for(int i=0;i<10;i++) {
 today = yesterday(today);
 System.out.println(today);
 }
 System.out.println("------------");
 for(int i=0;i<10;i++) {
 today = tomorrow(today);
 System.out.println(today);
 }
 
 }
 
 /**
 * 返回昨天
 * @param today
 * @return
 */
 public Date yesterday(Date today) {
 Calendar calendar = Calendar.getInstance();
 calendar.setTime(today);
 calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - 1);
 return calendar.getTime();
 }
 
 /**
 * 返回明天
 * @param today
 * @return
 */
 public Date tomorrow(Date today) {
 Calendar calendar = Calendar.getInstance();
 calendar.setTime(today);
 calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + 1);
 return calendar.getTime();
 }

总结

以上就是关于利用Java获取Date“昨天”和“明天”的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。


  • 2017-01-21 21:44:29

    详解 ESLint 规则,规范你的代码

    在很久之前就想通过工具来规范自己的代码风格,减少程序出错的概率,如果看过我的 一个前端程序猿的Sublime Text3的自我修养 ,这篇博客的朋友,肯定知道在当时我使用 SublimeLinter-jshint 插件来规范风格,但是实际上一直懒癌发作也没去看它的文档,使用着它默认的规则。不过现在是时候切换到 ESLint 了!

  • 2017-01-23 23:09:16

    使用 CSS3 实现超炫的 Loading(加载)动画效果

     SpinKit 是一套网页动画效果,包含8种基于 CSS3 实现的很炫的加载动画。借助 CSS3 Animation 的强大功能来创建平滑,易于定制的动画。SpinKit 的目标不是提供一个每个浏览器都兼容的解决方案,而是给现代浏览器提供更优的技术实现方案和更佳的使用体验。(为保证最佳的效果,请在 Chrome、Firefox 和 Safari 等现代浏览器中浏览)