我是java世界的新手。我正在学习和探索java calendar类,它是一个抽象类,由一个工厂方法get instance ()组成。我尝试递增或递减日期,例如,将当前日期加上一天得到明天的日期,减去一天得到昨天的日期,等等。因为在Java中,日期是作为一个很长的毫秒值来维护的,所以有时程序员倾向于将24小时作为一天。这可能是错误的,如果一天落在夏令时时区,在那里一天可能是23或25小时长。当您从日期中添加或减去日期时,日期的其他组成部分,例如月和年,必须滚动。
我的查询如下所示。在课上,我试着加减天。请告诉我,这是正确的方法,还是有其他更好的方法,你会建议。
//Using Calendar to increment and decrement days from date in Java
Date today = new Date();
System.out.println("Today is " + toddMMyy(today));
Calendar cal = Calendar.getInstance(); //adding one day to current date cal.add(Calendar.DAY_OF_MONTH, 1);
Date tommrrow = cal.getTime();
System.out.println("Tomorrow will be " + toddMMyy(tommrrow)); //substracting two day from date in Java
cal.add(Calendar.DAY_OF_MONTH, -2);
Date yesterday = cal.getTime(); System.out.println("Yesterday was " + MMyy(cal.getTime()));发布于 2013-04-05 11:15:12
你说得对。这就是我们使用日期毫秒算法时所发生的事情
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date d1 = df.parse("2013-03-30 12:00");
Date d2 = new Date(d1.getTime() + 24 * 3600 * 1000); // +24 hrs
System.out.println(df.format(d2));输出
2013-03-31 13:00https://stackoverflow.com/questions/15825106
复制相似问题