Java 日期与时间操作

更多 Java 基础知识方面的文章,请参见文集《Java 基础知识》


关于 Java 8 的日期与时间操作,参见 Java8 日期与时间操作

Calendar 类

示例:

public static void main(String[] args) {
    // 使用默认的时区 timezone 和语言 locale
    Calendar cal = Calendar.getInstance();

    // Thu Jan 19 17:49:26 CST 2017
    System.out.println(cal.getTime());
    System.out.println(cal.getTimeInMillis()); // 毫秒数
    System.out.println(cal.get(Calendar.YEAR)); // 年
    System.out.println(cal.get(Calendar.MONTH)); // 月 0~11
    System.out.println(cal.get(Calendar.DATE)); // 日
    System.out.println(cal.get(Calendar.HOUR_OF_DAY)); // 小时
    System.out.println(cal.get(Calendar.MINUTE)); // 分
    System.out.println(cal.get(Calendar.SECOND)); // 秒

    // 昨天
    cal.add(Calendar.DATE, -1);

    // 明年
    cal.add(Calendar.YEAR, 1);
}

Calendar 类 VS Date 类

Date date = new Date();
Date date = Calendar.getInstance().getTime();
  • Date 类更简单,主要用于兼容之前的 Java 程序
  • 如果需要设置和操作日期,最好使用 Calendar
  • Date 不能设置时区 timezone 和语言 locale,而 Calendar 类可以设置。

日期格式化

使用 SimpleDateFormat,关于格式参数,可以参见 SimpleDateFormat

测试页面:Online SimpleDateFormat Test

示例:

// 使用默认的时区 timezone 和语言 locale
Calendar cal = Calendar.getInstance();

SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd");
System.out.println(df.format(cal.getTime())); // 2017/01/19

Date date = df.parse("2017/01/19");
System.out.println(date); // Thu Jan 19 00:00:00 CST 2017
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,992评论 19 139
  • 转自 www.jianshu.com/p/bd1bfc0c34b8 作为一个程序员,在找工作的过程中,都会遇到笔试...
    灬黑客灬阅读 4,433评论 1 118
  • 作为一个程序员,在找工作的过程中,都会遇到笔试,而很多笔试里面都包括java,尤其是作为一个Android开发工程...
    左神话阅读 8,085评论 15 295
  • 自从JDK 1.0开始,Java就提供了Date来处理时间和日期,作为老古董自然有很多东西是过时的。然后出现了Ca...
    湫水长天阅读 2,095评论 0 16
  • 夜深了,深到谷底 谷底里尽是呼啸的风 呼呼地吹 吹来了春日野穹 吹走了晴夜安眠 吹进了虚晃的日子 深夜当陪着寂寞 ...
    xczjrove阅读 251评论 0 0