所有类的父类,若一个类没有指定父类,默认继承Object类
表示日期和时间,Date 表示特定的瞬间,精确到毫秒
package com.day7; import javax.jws.soap.SOAPBinding; import java.util.Date; /** * @author SFJ * @date 2019/11/13 * @time 22:28 **/ public class Test3 { public static void main(String[] args) { Date date1 = new Date();//分配 Date 对象并初始化此对象 System.out.println(date1); System.out.println("获取当前的毫秒值:"+date1.getTime()); Date date2 = new Date(19980920);//分配 Date 对象并初始化此对象 System.out.println(date1.getYear()); System.out.println(date2.getTime()); } }
java.text.DateFormat 是日期、时间格式化子类的抽象类可以帮我们完成日期文本之间的转换,也就是可以在 Date 对象与 String 对象之间进行来回转换 。
package com.day7; import java.text.SimpleDateFormat; import java.util.Date; /** * @author SFJ * @date 2019/11/13 * @time 22:47 **/ public class Test4 { public static void main(String[] args) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dddd"); Date date = new Date(); System.out.println(simpleDateFormat.format(date));; String string = "2019-11-13 22:52"; Date date1 = simpleDateFormat.parse(string); System.out.println(date1); } }
使用Date类计算时间
package com.day7; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; /** * @author SFJ * @date 2019/11/13 * @time 23:00 **/ public class Test5 { public static void main(String[] args) { System.out.println("请输入出生日期"); Scanner scanner = new Scanner(System.in); String date = scanner.next(); DateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date date1 = simpleDateFormat.parse(date); Date date2= new Date(); long t; t = date2.getTime()-date1.getTime(); if (t<0) System.out.println("还没出生"); else System.out.println(t/1000/60/60/24); } }
public static Calendar getInstance():使用默认时区和语言环境获得一个日历类对象
java.util.Calendar 是日历类,在 Date 后出现,替换掉了许多 Date 的方法,该类将所有可能用
到的时间信息封装为静态成员变量,方便获取。日历类就是方便获取各个时间属性的。
常用方法:
指定的时间量
public Date getTime():返回一个表示此 Calendar 对象时间值得 Date 对象
package com.day7; import java.util.Calendar; import java.util.Date; /** * @author SFJ * @date 2019/11/13 * @time 23:34 **/ public class Test7 { public static void main(String[] args) { //通过子类来创建对象 Calendar c1=Calendar.getInstance(); c1.set(Calendar.YEAR,2020); c1.add(Calendar.YEAR,-2); System.out.println("年:"+c1.get(Calendar.YEAR)); System.out.println("月:"+c1.get(Calendar.MONTH)); System.out.println("日:"+c1.get(Calendar.DATE)); System.out.println("天:"+c1.get(Calendar.DAY_OF_YEAR)); System.out.println("时:"+c1.get(Calendar.HOUR)); System.out.println("分:"+c1.get(Calendar.MINUTE)); System.out.println("秒:"+c1.get(Calendar.SECOND)); Date date1=c1.getTime(); System.out.println(date1); } }
逆运算(已知时间求生日)
package com.day7; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Scanner; /** * @author SFJ * @date 2019/11/13 * @time 23:18 **/ public class Test6 { public static void main(String[] args) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); Scanner scanner = new Scanner(System.in); System.out.println("请输入生存多久"); int days = scanner.nextInt(); calendar.add(Calendar.DATE,-days); System.out.println("您的出生日期为:"+calendar.getTime()); } } [点击并拖拽以移动]