侧边栏

Java的常用API之Date类简介

Data类

java.util.Date:表示日期和时间的类
类Date 表示特定的瞬间,精确到毫秒。
毫秒:千分之一秒 1000毫秒=1秒

把日期转换成毫秒:

  • 当前的日期:2019-07-18
  • 时间原点(0毫秒):1970-01-01 00:00:00(英国格林威治)
  • 就是计算当前日期到时间原点之间一共经历了多少毫秒

注意:
中国属于东八区,会把时间增加8个小时

  • 1970-01-01 08:00:00

把毫秒转换为日期:

  • 1天 = 24*60*60 = 86400秒 = 86400*1000=86400000毫秒

使用:

Date类的带参数构造方法
Date date = new Date();
Date();//获取当前系统的时间和日期
---------
Date date = new Date(0L);
Date(long date);//传递毫秒值,把毫秒值转化成Date日期
-----------
Date date = new Date();
long time = date.getTime();
long getTime() 把日期转换成毫秒(相当于System.currentTimeMillis()方法)
返回自1970年1月1日 00-00-00GMT 以来此Date 对象表示的毫秒数。

DateFormat类

java.text.DateFormat:是日期/时间格式化子类的抽象类

作用:

  • 格式化(也就是日期 -> 文本),解析(文本->日期)

成员方法:

  • String format(Date date) 按照指定的模式,把Date日期,格式化为符合模式的字符串
  • Date parse(String source) 把符合模式的字符串,解析为Date日期
  • DateFormat类是一个抽象类,无法直接创建对象使用,可以使用DateFormat类的子类
java.text.SimpleDateFormat extends DateFormat

使用DateFormat类中的方法format,把日期格式化为文本

使用步骤:

  1. 创建simpleDateFormat对象,构造方法中传递指定的模式
  2. 调用SimpleDateFormat对象中的方法format,按照构造方法指定的模式,把Date日期格式化为符合模式的字符串(文本)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
Date date = new Date();
String d = sdf.format(date);

Calendar类

介绍:
java.util.Calendar类;日历类

  • Calendar类是一个抽象类,里边提供了很多操作日历字段的方法(YEAR、MONTH、DAY_OF_MONTH、HOUR)
  • Calendar类无法直接创建对象使用,里边有一个静态方法叫getInstance(),该方法返回了Calendar类的子类对象
  • static Calendar getInstance() 使用默认时区和语言环境获得一个日历。
Calendar c = Calendar.getInstance();//多态

Calendar类的常用成员方法:

  • public int get(int field);返回给定日历字段的值。
  • public void set(int field,int value);将给定的日历字段设置为给定值
  • public abstract void add(int field, int amount);根据日历的规则,为给定的日历字段添加或减去指定的时间量。
  • public Data getTime();返回一个表示次Calendar时间值(从历元到现在的毫秒偏移量)的Date对象。
//public int get(int field);返回给定日历字段的值。
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);

///public void set(int field,int value);将给定的日历字段设置为给定值
//设置年为9999
//设置月为9月
c.set(Calendar.YEAR,9999);
c.set(Calendar.MONTH,9);

//增加年
c.add(Calendar.YEAR,2);

//把日历对象,转换为日期对象
Date date=c.getTime();

 

posted @ 2019-07-18 22:06  菜鸟-传奇  阅读(4985)  评论(0编辑  收藏  举报