java常用类——日期操作

xiaoxiao2021-02-28  31

本节目标:

    1.掌握Date、Calendar类的操作

    2.掌握日期格式化操作

    3.掌握SimpleDateFormat进行日期格式化操作

Date类

    Date类是一个常用的类,但是其操作的日期格式会有一些不符合人的要求。如果要进一步取得自己需要的时间,则可以使用Calendar类。

public class DateDemo1 { public static void main(String[] args) { Date date = new Date(); System.out.println(date); }

}

运行结果:

Mon Apr 09 17:27:29 CST 2018  

Calendat类

public abstract class Calendar

直接已知子类:GregorianCalendar

是一个抽象类,需要使用子类对象进行实例化。使用此类可以将日期精确到毫秒。以下取得一个完整日期。

public class CalendarDemo { public static void main(String[] args) { Calendar calendar = new GregorianCalendar(); //取得年份 System.out.println("年:" + calendar.get(Calendar.YEAR)); //取得月份 System.out.println("月:" + (calendar.get(Calendar.MONTH)+1)); //取得日 System.out.println("日:" + calendar.get(Calendar.DAY_OF_MONTH)); //取得时 System.out.println("时:" + calendar.get(Calendar.HOUR_OF_DAY)); //取得分 System.out.println("分:" + calendar.get(Calendar.MINUTE)); //取得秒 System.out.println("秒:" + calendar.get(Calendar.SECOND)); //取得毫秒 System.out.println("毫秒:" +calendar.get(Calendar.MILLISECOND)); }

}

注意在取得月份的时候要加1.

DateFormat类

此类是一个日期的格式化类,专门用来格式化日期。由于Date类已经包含了完整的日期,只需要将此日期进行格式化操作即可。

public abstract class DateFormat

此类是一个抽象类,需要子类进行实例化,但是该类本身提供了实例化操作。

|-得到日期的DateFormat对象:public static DateFormat getDateInstance() 

|-得到日期时间的DateFormat对象:public static DateFormat getDateTimeInstance() 

|-格式转换:public String format(Date date) 将一个 Date 格式化为日期/时间字符串

public class DateDemo2 { public static void main(String[] args) { DateFormat df1 = null; DateFormat df2 = null; df1 = DateFormat.getDateInstance(); df2 = DateFormat.getDateTimeInstance(); System.out.println("DATE:" + df1.format(new Date())); System.out.println("DATETIME:" + df2.format(new Date())); }

}

运行结果:

DATE:2018-4-9

DATETIME:2018-4-9 17:52:17

SimpleDateFormat类

public class SimpleDateFormat extends DateFormat

此类是DateFormat类的子类,用来完成日期的格式化操作。可以将一种日期格式变换成另一种日期格式。如:

原始日期:2018-04-09 17:59:20

转换成:2018年04月09日 17时59分20秒

以上可以发现,转换的日期数字相同,唯一不同的是显示的格式不同。要实现转换,首先要指定一个模板。

public class DateDemo3 { public static void main(String[] args) throws ParseException { String dateStr = "2018-04-09 17:59:20"; SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日  HH时mm分ss秒"); Date d = sdf1.parse(dateStr); String df = sdf2.format(d); System.out.println(df); }

}

运行结果:

2018年04月09日  17时59分20秒

总结:

一般情况下,DateFormat类很少直接使用,而是使用SimpleDateFormat完成。

转载请注明原文地址: https://www.6miu.com/read-2630702.html

最新回复(0)