JDK8时间类使用
LocalDate
LocalDate localDate = LocalDate.now();
LocalDate localDate1 = LocalDate.of(2019, 10, 13);
int year = localDate.getYear();
int year1 = localDate.get(ChronoField.YEAR);
Month month = localDate.getMonth();
int month1 = localDate.get(ChronoField.MONTH_OF_YEAR);
int day = localDate.getDayOfMonth();
int day1 = localDate.get(ChronoField.DAY_OF_MONTH);
DayOfWeek dayOfWeek = localDate.getDayOfWeek();
int dayOfWeek1 = localDate.get(ChronoField.DAY_OF_WEEK);
LocalTime
LocalTime localTime = LocalTime.now();
LocalTime localTime1 = LocalTime.of(19, 55, 50);
int hour = localTime.getHour();
int hour1 = localTime.get(ChronoField.HOUR_OF_DAY);
int minute = localTime.getMinute();
int minute1 = localTime.get(ChronoField.MINUTE_OF_HOUR);
int second = localTime.getMinute();
int second1 = localTime.get(ChronoField.SECOND_OF_MINUTE);
LocalDateTime
LocalDateTime localDateTime = LocalDateTime.now();
LocalDateTime localDateTime1 = LocalDateTime.of(2019, 10, 25, 20, 20, 59);
LocalDate localDate2 = localDateTime.toLocalDate();
LocalTime localTime2 = localDateTime.toLocalTime();
Instant
Instant instant = Instant.now();
long second2 = instant.getEpochSecond();
long minSecond = instant.toEpochMilli();
时间增减修改
localDateTime.plusYears(1);
localDateTime.plus(1, ChronoUnit.YEARS);
localDateTime.plusMonths(1);
localDateTime.plus(1,ChronoUnit.MONTHS);
localDateTime.minusDays(1);
localDateTime.minus(1,ChronoUnit.DAYS);
localDateTime.withYear(2018);
localDateTime.with(ChronoField.YEAR,2018);
时间差
Duration duration = Duration.between(localTime,localTime1);
duration.toDays();
duration.toHours();
Period period = Period.between(localDate,localDate1);
period.getYears();
period.getMonths();
LocalDate startDate = LocalDate.parse("2020-01-21");
LocalDate endDate = LocalDate.parse("2020-03-01");
endDate.toEpochDay() - startDate.toEpochDay();
时间比较
now1.isBefore(now2);
now1.isAfter(now2);
格式化与解析时间
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd/MM/yyyy hh:mm:ss");
String date = localDateTime.format(dateTimeFormatter);
LocalDate localDate3 = LocalDate.parse("2019-10-30");
LocalDate localDate4 = LocalDate.parse("20191030",DateTimeFormatter.BASIC_ISO_DATE);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime time = LocalDateTime.parse("2019-11-11 12:00:00",formatter);
unix时间戳
LocalDateTime now= LocalDateTime.now();
Long timeStamp = now.atZone(ZoneOffset.UTC).toInstant().toEpochMilli();
LocalDateTime time = LocalDateTime.ofEpochSecond(1577059200000L/1000,0,ZoneOffset.ofHours(0));
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!