批量操作UserTimer相关-Calendar类

本文介绍如何利用Java中的Calendar类来创建和管理时间节点。通过实例演示了Calendar的基本用法,包括初始化、设置时间以及使用set()与add()方法的区别。特别针对User-timer应用中的司机状态变化,展示了如何设置关键时间节点并触发状态转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Calendar类,是对时间的操作,用于创建日历和管理事项

User-timer有几个关键时间节点,司机在冻结状态时的时间节点是30天、60天,60天后自动转换成待解约状态,时间节点是24个月。之后自动转换成解约状态。

这里的时间节点的设置可以用Calendar类。


Calendar用法大致有以下几种:

1.初始化

//初始化一个Calendar对象,使用Calendar获取当前系统时间,需要获取Calendar对象后转换成Date输出
Calendar calendar = Calendar.getInstance();

2.设置时间

// 使用Calendar和数字设置月,注意月份从0开始,代表1月
//设置年:Calendar.YEAR,设置日:Calendar.DAY_OF_MONTH,设置小时:Calendar.HOUR,以此类推
calendar.set(Calendar.MONTH, 0);
System.out.println(calendar.getTime());

需要注意一点的是,Calendar类还有个add()方法,与set有点相似,但是它们的不同之处是对日期的变化不太一样:

set()是单纯地设置日期,若日期不存在,则会向下移动。而add()的移动的是日期的偏移量。

比如:

set:2016/11/31 3个月前的日期是 2016/09/01

add:2016/11/31 3个月前的日期是 2016/08/31


在user timer里,用add()方法把这些时间节点加进去,用当前时间和设置的时间节点进行比对,若到达了时间节点,则进而执行相应操作。


先粗略了解下,不对Calendar的效率和响应时间等等性能进行分析。以后有机会再详细了解。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值