3 日期与时间操作
2017-06-24 本文已影响0人
我是老薛
在编写程序时,有时我们需要使用日期和时间,java提供了Calendar 类来提供实现。
获取系统当前时间
利用Calendar 的静态方法可以获取到一个Calendar 对象,其初始值是系统当前时间,代码如:
import java.util.Calendar;
public class DateDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.get(Calendar.YEAR));
System.out.println(calendar.get(Calendar.MONTH)+1);
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
System.out.println(calendar.get(Calendar.HOUR));
System.out.println(calendar.get(Calendar.MINUTE));
System.out.println(calendar.get(Calendar.SECOND));
System.out.println(calendar.get(Calendar.MILLISECOND));
}
}
上面代码利用Calendar类 的getInstance方法获取到一个Calendar对象,代表系统当前时间。
然后利用其get方法,传入不同的参数值,获取不同的日期时间信息。
上面的代码按顺序输出当前的日期、时间信息:
- 年
- 月 (注意get返回的月份是从0开始的,即0代表1月,所以实际输出时加了1)
- 日
- 小时
- 分钟
- 秒
- 毫秒
设置日期时间
有了Calendar对象,我们可以调用set方法来修改其中的日期、时间值。如:
import java.util.Calendar;
public class DateDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
calendar.set(2050,9, 1);
System.out.println(calendar.get(Calendar.YEAR));
System.out.println(calendar.get(Calendar.MONTH)+1);
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
}
}
注意,set方法第二个参数是月份,从0开始,0代表1月。这里的9代表10月。set有很多种参数格式,代表不同的含义。
日期操作
在编写程序时,有时我们需要进行日期操作,比如获取几天前的日期。Calendar同样提供了实现机制。如:
import java.util.Calendar;
public class DateDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_MONTH, 2);
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
calendar.add(Calendar.DAY_OF_MONTH, -4);
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
}
}
add方法可以将日期、时间往前和往后移动指定的数值。
Calendar类有很多方法,提供了非常丰富的日期、时间操作,上面的介绍只是一些最常用的.