kotlin时间用法

介绍

项目开发中遇到的一些简单的时间的用法

当前时间

// 2022-07-20T13:37:56.979110
val current = LocalDateTime.now()

当天时间的开始时间和结束时间

  • 前闭后开
// 开始时间
val start = LocalDateTime.now().toLocalDate().atStartOfDay()
// 结束时间
val end = LocalDateTime.now().toLocalDate().plusDays(1).atStartOfDay()

获取当前年的1月1日0点0分

LocalDate.of(LocalDate.now().year, 1, 1).atStartOfDay();

format 时间转为字符串

val startTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))
val endTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))

时间 - 时分秒

获取当前时间

// 精度到毫秒 13:37:56.997693
val currentTime = LocalTime.now()

// 精度到分钟 13:37
val currentTimeStart = LocalTime.now().truncatedTo(ChronoUnit.MINUTES)

// 精度到分钟(但是会受到毫秒的影响, 毫秒可能会四舍五入到秒中,存在风险)
LocalDateTime.now().withSecond(0).toLocalTime() // 13:37:00.997693

获取当前时间是周几

val week = LocalDateTime.now().dayOfWeek.name // 星期的大写英语字母 THURSDAY
val week = LocalDateTime.now().dayOfWeek.value // 数字 4

获取当前时间是第几周

val week = LocalDateTime.now().get(ChronoField.ALIGNED_WEEK_OF_YEAR) // 数字41(第41周)

获取指定周所在当前时间

  • 比如今天是周二, 获取的时间是第三周的周二当前时间
// 2022-01-11T15:34:13.486739
val weekOfYear = LocalDateTime.now().with(ChronoField.ALIGNED_WEEK_OF_YEAR, 3)

字符串时间转为时间格式

val time = DateUtil.parseTime("12:11:12").toLocalDateTime().toLocalTime()

时间运算-加法

当前时间
val currentTime = LocalTime.now() // 12:00:00.000000

// 分钟的加法 -> 加1分钟
val lastMinutesTime = LocalTime.now().plusMinutes(1) // 12:00
// 秒的加法 -> 加59秒
val lastMinutesTime = LocalTime.now().plusSeconds(59)  // 12:00:59
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值