Java的日期对象

目录

1、JDK1.8及之后的时间日期对象

1.1、 LocalTime用法

1.2、时间差计算

1.3、修改

2、Date和Calender的区别

2.1、两者的使用方法


1、JDK1.8及之后的时间日期对象

        LocalTime、LocalDate、LocalDateTime

1.1、 LocalTime用法

//获取系统当前时间
LocalDateTime now = LocalDateTime.now();
//只要日期
 LocalDate localDate = localDateTime.toLocalDate();
//只要时间
LocalTime localTime = localDateTime.toLocalTime();
//获取指定时间
LocalDateTime time = LocalDateTime.of(年, 月, 日, 时, 分, 秒);
 //获取年份
int year = time.getYear();
 //获取月份
int monthValue = time.getMonthValue();
//获取月份中的第几天
int dayOfMonth = time.getDayOfMonth();
//获取年份中的第几天
int dayOfYear = time.getDayOfYear();
//获取星期几
DayOfWeek dayOfWeek = time.getDayOfWeek();
//获取分钟
 int minute = time.getMinute();
 //获取小时
 int hour = time.getHour();

1.2、时间差计算

 LocalDate localDate1 = LocalDate.of(年, 月, 日);
  LocalDate localDate2 = LocalDate.of(年, 月, 日);
  Period period = Period.between(localDate1, localDate2);
LocalDateTime localDateTime1 = LocalDateTime.of(年,月,日,时,分,秒,毫秒);
LocalDateTime localDateTime2 = LocalDateTime.of(年,月,日,时,分,秒,毫秒);
Duration duration = Duration.between(localDateTime1, localDateTime2);

1.3、修改

//plus进行修改
//年份加1,其他的类似
LocalDateTime newdatetime = dateTime.plusYears(1);//如果是负数则为减,为0则不变

//直接修改时间
//年份修改为2022年,其他修改方式类似使用with+...
LocalDateTime localDateTime = dateTime.withYear(2022);

2、Date和Calender的区别

        Date类表示的是特定的,它能精确毫秒。

        Calendar它是一种抽象类,相比Date它在操作日历的时候提供了一些方法来操作日历字段

2.1、两者的使用方法

Date用法:

//打印当前日期
Date date = new Date();

//时间转字符串
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = sdf.format(date);

Calendar用法:

//为保证线程安全,使用单例构造,返回一个calendar对象
Calendar cal = Calendar.getInstance();
//打印当前日期
System.out.println(cal.getTime());
//打印年月日,时分秒
System.out.println("年:" + cal.get(Calendar.YEAR));
System.out.println("月:" + (cal.get(Calendar.MONTH) + 1));
System.out.println("日:" + cal.get(Calendar.DAY_OF_MONTH));
System.out.println("时:" + cal.get(Calendar.HOUR_OF_DAY));//24小时制
System.out.println("时:" + cal.get(Calendar.HOUR));//12小时制
System.out.println("分:" + cal.get(Calendar.MINUTE));
System.out.println("秒:" + cal.get(Calendar.SECOND));
//修改时间
cal.add(Calendar.YEAR.-1);//代表的是field[Calendar.YEAR]进行与-1相加
cal.roll(Calendar.YEAR.true);//true代表进行加1,false代表进行减1
cal.set(年,月,日);

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值