58.Date类(第一代日期类)
-
Date:精确到毫秒,代表特定的瞬间
-
SimpleDateFormat:格式和解析日期的类
Date d1 = new Date(); //获取当前系统时间 Date d2 = new Date(9234567); //通过指定毫秒数得到实践 //创建SimpleDateFormat对象,可以指定相应的格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss E") String format = sdf.format(d1); //format:将日期转换成指定格式的字符串 //可以把一个格式化的String转换成对应的Date String s = "1996年01月01日 10:20:30 星期一"; Date parse = sdf.pares(s); //注意:得到Date仍然在输出时,还是按照国外的形式,如果希望指定输出格式,需要转换 //在把String->Date,使用的sdf格式需要和你给的String的格式一样,否则会抛出转换异常
59.Calendar类(第二代日期类)
Calendar类是一个抽象类,并且构造器私有化,它为特定瞬间与一组诸如YEAR、MONTH、DAY_OF_MONTH、HOUR等日历字段之间的转换提供了一些方法,并为操作日历字段提供了一些方法
Calendar c = Calendar.getInstance(); //创建日历类对象 //获取日历对象的某个日历字段 System.out.println("年: "+c.get(Calendar.YEAR)); System.out.println("月: "+c.get(Calendar.MONTH)+1); //?为什么+1 因为Calendar 返回月的时候,是按照0开始编号 System.out.println("日: "+c.get(Calendar.DAY_OF_MONTH)); System.out.println("小时: "+c.get(Calendar.HOUR)); System.out.println("分钟: "+c.get(Calendar.MINUTE)); System.out.println("秒: "+c.get(Calendar.SECOND));