练习使用日期时间算出一个人出生了多久, Calendar类的常用成员方法
练习使用日期时间算出一个人出生了多久
思路:
获取当前时间对应的毫秒值
获取自己出生时间日期对应的毫秒值
两个时间相减
案例:
public class DateOfBirth {
public static void main(String[] args) throws ParseException {
System.out.println("输入你的出生日期");
Scanner sc = new Scanner(System.in);
String next = sc.next();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
// 使用parse方法解析为Date格式
Date parse = format.parse(next);
// 转换为毫米值
long time = parse.getTime();
// 获取一下当前的日期
long date = new Date().getTime();
// 相减
long l = date - time;
System.out.println(l/1000/60/60/24);
}
}
我们来看一下结果:
Calendar类的常用成员方法
get(int field)
返回给定日历字段的值。
/**
* 返回给定日历字段的值
* 参数: 传递指定的日历字段()
* 返回值:日历字段代码具体的值
*/
public static void dmoe1(){
// 使用getInstance方法获取Calendar对象
Calendar instance = Calendar.getInstance();
int i = instance.get(Calendar.YEAR);
System.out.println(i);
int i1 = instance.get(Calendar.MONTH);
System.out.println(i1+1);
int date = instance.get(Calendar.DATE);
System.out.println(date);
}
____________________________________________________
set(int field, int value)
将给定的日历字段设置为给定值。
/***
* set(int field, int value)
* 将给定的日历字段设置为给定值。
*
* 参数: 传递指定的日历字段() int value):传递字段设置的具体的值
*
*/
public static void dmoe1(){
// 使用getInstance方法获取Calendar对象
Calendar instance = Calendar.getInstance();
// 设置年为9999
instance.set(Calendar.YEAR,9999);
// 设置年月9
instance.set(Calendar.MONTH,9);
// 设置日为9
instance.set(Calendar.DATE,9);
____________________________________________________
add(int field,int amount)
- 根据日历的规则,为给定的日历字段添加或减去指定的时间量
-
/***
* add(int field,int amount)
* 根据日历的规则,为给定的日历字段添加或减去指定的时间量
* 参数: 传递指定的日历字段() int value):传递字段设置的具体的值
*/
private static void dmoe2() {
Calendar instance = Calendar.getInstance();
instance.add(Calendar.YEAR,2);
instance.add(Calendar.MONTH,10);
instance.add(Calendar.DATE,5);
int i = instance.get(Calendar.YEAR);
System.out.println(i);
int i1 = instance.get(Calendar.MONTH);
System.out.println(i1);
int date = instance.get(Calendar.DATE);
System.out.println(date);
}
__________________________________________________________ getTime()
返回一个表示此Calendar
时间值(从历元至现在的毫秒偏移量)的Date
对象。-
/***
* getTime()
* 返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。
* 打印日期
*/
private static void demo3() {
Calendar instance = Calendar.getInstance();
Date da = instance.getTime();
System.out.println(da);
}