java学习笔记07--日期操作类

时间:2021-05-18 18:06:44

java学习笔记07--日期操作类

一、Date类

在java.util包中定义了Date类,Date类本身使用非常简单,直接输出其实例化对象即可。

  1. public class T {
  2. public static void main(String[] args) {
  3. Date date  = new Date();
  4. System.out.println("当前日期:"+date); //当前日期:Thu May 16 23:00:57 CST 2013
  5. }
  6. }

二、Calendar类

使用此类可以将日期精确到毫秒

public abstract class Calendar

extends Object Calendar类是一个抽象类,既然是一个抽象类则肯定无法直接使用,此时就要利用对象多态性的概念,通过向上的转型关系实例化本类对象。通过Calendar类取得一个完整的日期,使用其子类。
  1. public class T {
  2. public static void main(String[] args) {
  3. Calendar calendar = new GregorianCalendar();
  4. //Calendar c = Calendar.getInstance();
  5. System.out.println("年:"+calendar.get(Calendar.YEAR));
  6. System.out.println("月:"+(calendar.get(Calendar.MONTH)+1));
  7. System.out.println("日:"+calendar.get(Calendar.DAY_OF_MONTH));
  8. System.out.println("时:"+calendar.get(Calendar.HOUR_OF_DAY));
  9. System.out.println("分:"+calendar.get(Calendar.MINUTE));
  10. System.out.println("秒:"+calendar.get(Calendar.SECOND));
  11. System.out.println("毫秒:"+calendar.get(Calendar.MILLISECOND));
  12. }
  13. }

三、DateFormat类

此类是一个日期的格式化类,专门格式化日期的操作,因为java.util.Date类本身就已经包含了完整的日期,所以只需要将此日期安装一些好的格式格式化一下显示就好了。

public abstract class
DateFormat

此类也是一个抽象类,DateFormat类本身内部提供了可以直接为其实例化的操作。

得到日期的DateFormat对象  public  static  final  DateFormat  getDateInstance()

得到日期和时间的DateFormat对象  public static  final  DateFormat  getDateTimeInstance()

直接使用DateFormat类完成Date的的转换功能。

public  final  String  format(Date  date)

  1. public class T {
  2. public static void main(String[] args) {
  3. DateFormat df1 = DateFormat.getDateInstance();  //得到日期的DateFormat对象
  4. DateFormat df2 = DateFormat.getDateTimeInstance(); //得到日期和时间的DateFormat对象
  5. System.out.println(df1.format(new Date()));
  6. System.out.println(df2.format(new Date()));
  7. }
  8. }

四、SimpleDateFormat类

  1. public class T2 {
  2. public static void main(String[] args) throws ParseException {
  3. String str = "1990-04-13";
  4. String parten = "yyyy-MM-dd";
  5. SimpleDateFormat sdf1 = new SimpleDateFormat(parten);
  6. SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日");
  7. Date date = sdf1.parse(str);  //解析字符串,将字符串转换为日期类型
  8. System.out.println(sdf2.format(date));
  9. System.out.println("级联形式: "+new SimpleDateFormat("yyyy年MM月dd日").format(new SimpleDateFormat("yyyy-MM-dd").parse(str)));
  10. System.out.println("----忧愁的分割线------");
  11. String s = "2008-08-08";
  12. Date d = new SimpleDateFormat("yyyy-MM-dd").parse(s);
  13. System.out.println(new SimpleDateFormat("yyyy年MM月dd日").format(d));
  14. }
  15. }