3 日期与时间操作

在编写程序时,有时我们需要使用日期和时间,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类有很多方法,提供了非常丰富的日期、时间操作,上面的介绍只是一些最常用的.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容