JDK8之前日期时间
1.java.lang.System类
System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。此方法适用于计算时间差。
2.java.util.Date
表示特定的瞬间,精确到毫秒
构造器:
Date(): 使用无参构造器创建的对象可以获取本地当前时间。
Date(long date)
常用方法:
getTime():返回自1970 年1 月1 日00:00:00 GMT 以来此Date 对象
表示的毫秒数。
toString():把此Date 对象转换为以下形式的String:dow mon dd
hh:mm:ss zzz yyyy 其中:dow 是一周中的某一天(Sun, Mon, Tue,
Wed, Thu, Fri, Sat),zzz是时间标准。
3.java.text.SimpleDateFormat类
Date类的API不易于国际化,大部分被废弃了,java.text.SimpleDateFormat类是一个不与语言环境有关的方式来格式化和解析日期的具体类。
格式化:
SimpleDateFormat() :默认的模式和语言环境创建对象
public SimpleDateFormat(String pattern):该构造方法可以用参数pattern指定的格式创建一个对象,该对象调用:
public String format(Date date):方法格式化时间对象date
解析:
public Date parse(String source):从给定字符串的开始解析文本,以生成一个日期。
代码演示:
Date dateOne = new Date(); SimpleDateFormat sft = new SimpleDateFormat("yyyy-mm-dd E HH:mm:ss"); String format = sft.format(dateOne);//日期转字符串 try { Date parse = sft.parse(format);//字符串转日期 System.out.println(parse); } catch (ParseException e) { e.printStackTrace(); }
4.java.util.Calendar(日历)类
Calenddar是一个抽象类,主要用于完成日期字段之间相互操作的功能。
获取Calendar实列方法
使用Calendar.getInstance()方法
调用它的子类GregorianCalendar的构造器。
一个Calendar的实列是系统时间的抽象表示,通过get(int field)方法来取得想要的时间信息。
代码演示:
//实列化的方式一: Calendar instance = Calendar.getInstance(); //实列化的方式二: GregorianCalendar currentTime = new GregorianCalendar(); System.out.println(currentTime.get(Calendar.YEAR));//年 System.out.println(currentTime.get(Calendar.MONTH)+1);//月 System.out.println(currentTime.get(Calendar.DATE));//日 System.out.println(currentTime.get(Calendar.DAY_OF_WEEK)-1);//周 System.out.println(currentTime.get(Calendar.HOUR_OF_DAY));//小时 System.out.println(currentTime.get(Calendar.MINUTE));//分钟 System.out.println(currentTime.get(Calendar.SECOND));//秒 currentTime.add(Calendar.YEAR, 1);//对年的增加 currentTime.add(Calendar.DATE,10);//对日的增加 currentTime.add(Calendar.DATE,-2);//对日的减去 currentTime.set(Calendar.YEAR,1999);//设置年 Date date = currentTime.getTime();//日历类转时间类 System.out.println(date); currentTime.set(Calendar.YEAR,1998);//设置年 currentTime.setTime(currentTime.getTime());//设置时间 System.out.println(currentTime.getTime());
注意:
获取月份时:一月是0,二月是1,以此类推,12月是11
获取星期时:周日是1,周二是2 ,以此类推,周六是7

浙公网安备 33010602011771号