Java对时间的简单操作实例
需积分: 0 151 浏览量
更新于2020-09-04
收藏 38KB PDF 举报
在Java编程语言中,处理时间是一项常见的任务。`java.util.Date` 类是Java早期用于表示日期和时间的基础类,但它的使用通常被认为不够直观。在本篇实例中,我们将探讨如何进行Java对时间的简单操作,包括获取当前时间、进行时间的增减、格式化时间以及时间戳的转换。
获取当前时间可以通过创建一个 `Date` 对象来实现,如以下代码所示:
```java
Date time = new Date();
```
然而,如果需要对时间进行增加或减少,例如增加12个月,我们就不能直接对 `Date` 对象操作,而是需要借助 `Calendar` 类。`Calendar` 是一个抽象类,不能直接实例化,但我们可以调用 `getInstance()` 静态方法来获取一个 `Calendar` 实例:
```java
Calendar c = Calendar.getInstance();
c.setTime(time);
c.add(Calendar.MONTH, 12);
Date dateTime = c.getTime();
```
这里的 `add()` 方法接受一个 `Calendar` 枚举值作为参数,用于指定要增加或减少的时间单位(如 `MONTH`)和数值。
接下来,我们可能需要将时间格式化为易于人类阅读的字符串形式,这可以通过 `SimpleDateFormat` 类完成:
```java
String timeStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(time);
```
`SimpleDateFormat` 允许我们定义日期和时间的格式,如 "yyyy-MM-dd HH:mm:ss" 表示四位年份-两位月份-两位日期 24小时制的小时:分钟:秒。
此外,Java还提供了将 `Date` 对象转换为时间戳(以毫秒为单位)以及将时间戳转换回 `Date` 对象的方法。以下是一些实用的辅助函数:
```java
public static long DateToLong(Date time) {
try {
return time.getTime();
} catch (Exception e) {
e.printStackTrace();
return 0;
}
}
public static Date LongToDate(long time) {
try {
return new Date(time);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
```
这里,`DateToLong()` 方法返回 `Date` 对象对应的时间戳,而 `LongToDate()` 方法则根据给定的时间戳创建一个新的 `Date` 对象。
虽然Java中的时间操作相对复杂,但通过使用 `Date`、`Calendar` 和 `SimpleDateFormat` 类,我们可以有效地进行时间处理。随着Java的发展,`java.time` 包(自Java 8引入)提供了更现代、更易于使用的API,如 `LocalDateTime` 和 `ZonedDateTime`,这些类在处理日期和时间时提供了更好的体验。尽管如此,理解 `Date` 和 `Calendar` 的使用仍然是学习Java基础的重要部分。
weixin_38708461
- 粉丝: 5
- 资源: 993
最新资源
- 课堂考勤微信小程序ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 考研论坛设计+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 基于微信小程序的医院体检管理系统+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 民大食堂用餐综合服务平台+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 基于微信小程序的医院综合服务平台的设计与实现ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 旅游社交小程序+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 马拉松报名系统微信小程序+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 基于微信小程序的医院挂号预约系统ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 明星应援系统设计与实现+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 基于深度学习的图像识别系统的研究与实现-构建高效CNN模型及其应用
- 基于微信小程序的在线学习系统springboot-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 南宁周边乡村游微信小程序+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 基于微信小程序的游泳馆管理系统--论文-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.zip
- 基于微信小程序的在线点餐(堂食)平台的设计与实现ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 模拟考试+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar
- 汽车预约维修系统+ssm-微信小程序毕业项目,适合计算机毕-设、实训项目、大作业学习.rar