发布网友 发布时间:2022-04-22 22:09
共2个回答
热心网友 时间:2023-10-05 09:12
这里的bri是一个Date类型,它的值就是出生年月日,这里是20000908,cal.setTime(bri)这句话的意思是给cal赋值为20000908.追问将id里的年份信息赋值给现在机器时间的年份,我都没见有赋值号啊?怎么赋值的?追答setTime()
热心网友 时间:2023-10-05 09:12
你能把导入的包名给我看看吗 估计是java里的时间操作类 你查一下Java说明文档追问import java.text.ParseException;追答先看这个式子
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date dd = df.parse("2009-05-25 17:59:19");
Calendar now=Calendar.getInstance();
String time=now.get(Calendar.YEAR)+"-"+(now.get(Calendar.MONTH)+1)+"-"+now.get(Calendar.DAY_OF_MONTH)+" "+now.get(Calendar.HOUR_OF_DAY)+":"+now.get(Calendar.MINUTE)+":"+now.get(Calendar.SECOND);
可知:
now.get(Calendar.×××);的意思就是将固定时间格式里的年份月份提取出来;
set(f, value);就是将f设定为value的值;
cal.set(Calendar.YEAR, now.get(Calendar.YEAR));的意思应该是将id里的年份信息赋值给现在机器时间的年份,而机器时间的月份等其他时间不变,方便下一步的对比。
下面的
if (cal.compareTo(now) > 0) {
age--;
}
return age;
就是将id里的出生日期与修改过年份的机器时间相比较,实现的功能是如果id的月份比现在机器时间的月份大,年龄就减一,因为多算了一年。
写的有点乱,能看懂吗?