1、Date类:表示特定的时间,精确到毫秒。
(1) 构造方法: Date() : 根据当前的默认毫秒值创建日期对象 Date(long date) :根据给定的毫秒值创建日期对象 Date date = new Date(System.currentTimeMillis()) : 获取当前日期时间 (2) 常用方法 public long getTime() : 获取时间,以毫秒值为单位 public long setTime(long time) : 设置时间,形参是 毫秒值,在1970.1.1的基础上加上毫秒值
2、DateFormat类: 可以进行日期和字符的格式化和解析,但是由于是抽象类,所以使用具体子类SimpleDateFormat Date ——>String 格式化 String ——>Date 解析
(1) SimpleDateFormat的构造方法 SimpleDateFormat() :采用默认模式 SimpleDateFormat(String pattern) :给定模式,自定义 模式写法: 年 y 月 M 日 d 时 H 分 m 秒 s 例如:2017年12月12日 12:12:12 SimpleDateFormat sdf = new SimpleDateFormat(“yyyy年MM月dd日 HH:mm:ss”) ;
(2)常用方法 <1> Date ——> String 格式化日期 public final String format(Date date)
//例如: Date d = new Date() ; //创建给定模式的格式化对象 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss") ; String s = sdf.format(d) ;<2>String ——> Date 解析日期 public Date parse(String s) ;
//例如: String str = "2017-06-07 15:26:34" ; //在把一个字符串解析为日期的时候,要注意模式必须和给定的字符串的格式相同! SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") Date d = sdf.parse(str) ;3、创建一个时间日期类的工具类
/** * 这是日期和字符串相互转换的工具类 * * @author 风清扬 */ public class DateUtil { private DateUtil() { } /** * 这个方法的作用就是把日期转成一个字符串 * * @param d * 被转换的日期对象 * @param format * 传递过来的要被转换的格式 * @return 格式化后的字符串 */ public static String dateToString(Date d, String format) { // SimpleDateFormat sdf = new SimpleDateFormat(format); // return sdf.format(d); return new SimpleDateFormat(format).format(d); } /** * 这个方法的作用就是把一个字符串解析成一个日期对象 * * @param s * 被解析的字符串 * @param format * 传递过来的要被转换的格式 * @return 解析后的日期对象 * @throws ParseException */ public static Date stringToDate(String s, String format) throws ParseException { return new SimpleDateFormat(format).parse(s); } }