首页 > 代码库 > Java中时间日期的计算及相互转换

Java中时间日期的计算及相互转换

Java中表示时间日期的主要是Date和Calendar两个类,以及Date与String转换用到的SimpleDateFormat类。

  • 0x00:Date与long类型之间的转换
      Java内部使用UTC时间,保存距1970年01月01日00时00分00秒以来所经历的毫秒值,使用的是long类型。
      //需要导入java.util包里的Date类import java.util.Date;long millis = 0;Date date = new Date();//将date转为millismillis = date.getTime();//将millis转为datedate = setTime(millis);
  • 0x01:Date与String类型之间的转换
      Date类型的格式输出和格式输入需要使用到SimpleDateFormat类
      import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//Date按sdf指定的格式转换为String,使用sdf的format方法Date date = new Date();String str = sdf.format(date);//String转Date,使用parse方法,需要进行异常处理str = "2014-11-21 10:47:28";try {  date = sdf.parse(str);} catch (ParseException e) {  e.printStackTrace();}
  • 0x02:Date与Calendar之间的转换
      Date中大部分方法都过时不用了,日期计算主要使用Calendar。
      import java.util.Calendar;import java.util.Date;//Calendar是抽象类,不能直接实例话,可以通过其静态方法getInstance()返回一个子类的对象。Calendar calendar = Calendar.getInstance();//使用getTime方法,将Calendar转换为DateDate date = calendar.getTime();//使用setTime方法,将Date转换为Calendarcalendar.setTime(date);

Java中时间日期的计算及相互转换