Java 时间加八个小时 java时间加减计算方法
Java日期或时间相加减
java.time.LocalDateTime是一个可以表示日期时间的对象,代表日期时间,也提供了日期LocalDate和时间LocalTime。LocalDateTime的时间精度为纳秒精度(1秒=1000毫秒,1毫秒=1000微秒,1微秒=1000纳秒)
后续开发尽量使用LocalDateTime等新工具提高性能和并发处理安全性,更多操作百度上太多就不再这里详述了
一、LocalDate、 LocalDateTime时间加减操作,支持各种维度
LocalDate.now();
LocalTime.now();
LocalDateTime.now();
LocalDateTime.parse("2022-02-01");
LocalDateTime.of(2022, 7, 25, 8, 0, 0);
LocalDateTime.now().plusYears(-3); //减去3年
LocalDateTime.now().plusWeeks(1); //加1周
LocalDateTime.now().minusHours(5); //加5小时
LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm:ss")); //序列化
时间类型转换
LocalDateTime d = LocalDateTime.now(); d.toDate()可以转为Date对象 d.toLocalDate()转为LocalDate
例子
@Data
@TableName("person")
public class Person implements Serializable {
@TableId(value = "id")
private Long id;
private String username;
private LocalDateTime birthDate;
}
二、date 时间加减
1.获取当前系统时间
Date date = new Date();
2.实现时间的加减的两种方法
第一种: 用java.text.SimpleDateFormat来实现
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
System.out.println("今天的日期:"+df.format(date));
System.out.println("两天前的日期:" + df.format(new Date(date.getTime() - 2 * 24 * 60 * 60 * 1000)));
System.out.println("三天后的日期:" + df.format(new Date(date.getTime() + 3 * 24 * 60 * 60 * 1000)));
获取当前毫秒值进行加减.
第二种:用java.util.Calender来实现
Calendar cal = Calendar.getInstance();
cal.setTime(date);//设置起时间
//System.out.println("111111111::::"+cal.getTime());
cal.add(Calendar.YEAR, 1);//增加一年
//cd.add(Calendar.DATE, 1);//增加一天
//cd.add(Calendar.DATE, -10);//减10天
//cd.add(Calendar.MONTH, 1);//增加一个月
System.out.println("输出::"+cal.getTime());

