Date和Calendar用于Java时间处理,Date表示毫秒级瞬间,Calendar提供字段操作;创建Date用new Date(),获取时间戳用getTime();Calendar通过getInstance()获取实例,get/set/add方法操作年月日,注意月份从0开始;两者可相互转换:setTime()将Date转Calendar,getTime()将Calendar转Date;但均非线程安全,且部分方法已过时,建议新项目使用java.time包。

Java中的Date和Calendar类是处理时间的常用工具,虽然现在推荐使用新的java.time包(如LocalDateTime、ZonedDateTime等),但在很多老项目中仍能看到Date和Calendar的身影。下面介绍如何用这两个类进行常见的时间操作。
Date类的基本使用
Date类表示特定的瞬间,精确到毫秒。
• 创建当前时间的Date对象:
new Date() 会获取系统当前时间。
• 获取时间戳:
getTime() 方法返回自1970年1月1日00:00:00 GMT以来的毫秒数。
立即学习“Java免费学习笔记(深入)”;
• 示例代码:
Date now = new Date();
System.out.println(“当前时间:” + now);
System.out.println(“时间戳:” + now.getTime());
Calendar类的操作方法
Calendar是一个抽象类,提供了更灵活的时间字段操作能力,比如获取年、月、日等。
• 获取Calendar实例:
使用 Calendar.getInstance() 获取默认时区和语言环境的Calendar对象。
• 读取时间字段:
通过 get(int field) 方法获取指定字段的值,例如 Calendar.YEAR、Calendar.MONTH 等。
• 修改时间:
使用 set 方法可以设置年月日,add 方法可进行增减操作。
ShopEx助理
一个类似淘宝助理、ebay助理的客户端程序,用来方便的在本地处理商店数据,并能够在本地商店、网上商店和第三方平台之间实现数据上传下载功能的工具。功能说明如下:1.连接本地商店:您可以使用ShopEx助理连接一个本地安装的商店系统,这样就可以使用助理对本地商店的商品数据进行编辑等操作,并且数据也将存放在本地商店数据库中。默认是选择“本地未安装商店”,本地还未安
0 查看详情
• 示例代码:
Calendar cal = Calendar.getInstance();
cal.set(2025, Calendar.MARCH, 15); // 设置日期
cal.add(Calendar.DAY_OF_MONTH, 10); // 加10天
Date result = cal.getTime(); // 转回Date
Date与Calendar之间的转换
在实际开发中,经常需要两者之间相互转换。
• Date转Calendar:
Calendar cal = Calendar.getInstance();
cal.setTime(date);
• Calendar转Date:
Date date = cal.getTime();
这种转换在做日期加减或格式化输出时非常有用。
注意事项
Date类的大部分构造函数和方法已被标记为过时,比如setYear()、getHours()等,建议配合Calendar使用。
Calendar的月份从0开始(0表示一月),容易出错,需特别注意。
两者都不是线程安全的,在多线程环境下要小心使用。
基本上就这些。虽然Date和Calendar还能用,但建议新项目直接使用java.time包下的类,API更清晰,功能也更强。不过理解旧类有助于维护老代码。不复杂但容易忽略细节。
以上就是如何使用Java中的Date和Calendar处理时间的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1094971.html
微信扫一扫
支付宝扫一扫