引言
现在已经1点了,才马虎的学完时间类的剩下的Calendar类和一个自制求出生天数的小API.
求一个人的出生天数
分析
1.用Scanner读入出生日期
2.把出生日期转换为日期格式
3.把日期转换为毫秒值
4.得到当前日期
5.相减得到时间差
代码
public class T3 {
public static void main(String[] args) throws ParseException {
Scanner sc=new Scanner(System.in);
System.out.println("请输入您的出生日期:(yyyy-MM-dd)");
//设置输入出生日期的格式
String birth=sc.nextLine();
SimpleDateFormat smf=new SimpleDateFormat("yyyy-MM-dd");
//用DateFormat类格式化字符串
Date birthday=smf.parse(birth);
long birthtime=birthday.getTime();
//Date类得到当前日期
long today=new Date().getTime();
long time=today-birthtime;
System.out.println("您已经出生了"+time/1000/60/60/24+"天哟");
}
}
我竟然已经出生了7000天。(老了老了~~~~~~~)

Calendar类
与DateFormat类一样,Calendar(日历)也是抽象类。其中的**.getInstance()**返回它的子类。
get()和set()方法
get()方法是获得系统的日期;set()方法是改变系统的日期。
//get年月日,时分秒
int year=c1.get(Calendar.YEAR);
//获得年
int Month=c1.get(Calendar.MONDAY);
//西方是0-11月,没有12月,故会差一个月;
int Day=c1.get(Calendar.DATE);
System.out.println(year+" "+Month+" "+Day);
int min=c1.get(Calendar.MINUTE);
//获取分钟
//设置set年月日
c1.set(Calendar.YEAR,21);
//可以单独设置
System.out.println(Calendar.YEAR);
//也可以一起设置
c1.set(111,23,4);
System.out.println(c1.getTime());

getTime()和add()
getTime()是返回日历对象所对应的时间对象;
add()是增加字段的值。
System.out.println("==========================");
System.out.println(c1.getTime());
c1.add(Calendar.YEAR,10);
//把‘年’字段增加10
System.out.println(c1.getTime());

总结
坚持就是胜利;
你羡慕别人,别人也在羡慕你。
减肥力度要加强;
本文详细介绍了如何使用Java的Scanner类读取用户输入的出生日期,并通过SimpleDateFormat类将其转换为Date对象,进而计算出生至今的天数。同时,深入探讨了Calendar类的使用方法,包括获取和设置日期时间的字段,以及使用getTime()和add()方法进行日期时间的计算。
796

被折叠的 条评论
为什么被折叠?



