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转为millis
      millis = date.getTime();
      //将millis转为date
      date = 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转换为Date
      Date date = calendar.getTime();
      
      //使用setTime方法,将Date转换为Calendar
      calendar.setTime(date);
时间: 2024-11-05 11:54:50

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

Java中时间日期格式化

1.与日期时间相关的类:      第一:java.util.Date;                         将时间作为一个整体使用.处理时,使用Date类较为简便      第二:java.util.Calender;                   要处理时间的一部分,如月.分时,使用Calendar类较为简便      第三:java.text.DateFormat               抽象类,是SimpleDateFormate的父类      第四:java.t

Java 8 时间日期库的20个使用示例

java 8是如何处理时间及日期的 有人问我学习一个新库的最佳途径是什么?我的回答是,就是在实际项目中那样去使用它.在一个真实的项目中会有各种各样的需求,这会促使开发人员去探索和研究这个新库.简言之,只有任务本身才会真正促使你去探索及学习.java 8的新的日期及时间API也是一样.为了学习Java 8的这个新库,这里我创建了20个以任务为导向的例子.我们先从一个简单的任务开始,比如说如何用Java 8的时间日期库来表示今天,接着再进一步生成一个带时间及时区的完整日期,然后再研究下如何完成一些更

java中的日期处理类总结

转自 http://blog.csdn.net/shibenjie/article/details/4263912 java中的日期处理类总结:Date/Calendar/GregorianCalendar/DateFormat/SimpleDateFormat类 今天花了好大一点时间把java的日期类做了一下整理,哈 1.         Date类(该类现在很少用了) l         Date类对象的创建: n         创建一个当前时间 //默认是创建一个代表系统当前日期的Dat

Java8中时间日期库的20个常用使用示例

除了lambda表达式,stream以及几个小的改进之外,Java 8还引入了一套全新的时间日期API,在本篇教程中我们将通过几个简单的任务示例来学习如何使用Java 8的这套API.Java对日期,日历及时间的处理一直以来都饱受诟病,尤其是它决定将java.util.Date定义为可修改的以及将SimpleDateFormat实现成非线程安全的.看来Java已经意识到需要为时间及日期功能提供更好的支持了,这对已经习惯使用Joda时间日期库的社区而言也是件好事.关于这个新的时间日期库的最大的优点

Java 8 时间日期库的20个使用演示样例

除了lambda表达式,stream以及几个小的改进之外,Java 8还引入了一套全新的时间日期API,在本篇教程中我们将通过几个简单的任务演示样例来学习怎样使用Java 8的这套API.Java对日期,日历及时间的处理一直以来都饱受诟病.尤其是它决定将java.util.Date定义为可改动的以及将SimpleDateFormat实现成非线程安全的. 看来Java已经意识到须要为时间及日期功能提供更好的支持了,这对已经习惯使用Joda时间日期库的社区而言也是件好事. 关于这个新的时间日期库的最

solr和java时区时间日期转化方法

我们一般得到的时间为当地时区的时间,而我存储到服务器上时想得到格林威治时间(GMT)和世界协调时间(UTC).一种是通过时间差计算:目标时区时间+时区差=本时区的时间.另一种则是通过设置时区不过要调用set方法,在多线程情况下调用set会发生错误,所以最好使用第一种: 第一种代码: package com; import java.text.SimpleDateFormat; import java.util.Date; import java.util.TimeZone; public cla

项目总结2--Oracle中时间日期格式

在Oracle中,方法没有SQL Server那么多 一 转换方法to_date() :作用将字符类型按一定格式转化为日期类型: to_date('2004-11-27 13:34:43', 'yyyy-mm-dd hh24:mi:ss') to_char():转换成字符串类型,如:To_char(1234.5, '$9999.9'),结果:$1234.5 to_number() :转换成数值类型,如:To_number('1234.5'),结果:1234.5 Oracle的to_date()方

填坑:Java 中的日期转换

我们之前讨论过时间,在Java 中有一些方法会出现横线?比如Date 过期方法. 参考文章:知识点:java一些方法会有横线?以Date 过期方法为例 Java中的日期和时间处理方法 Date类(官方不再推荐使用,官方解释Date类不利于国际化,推荐使用Calendar类) Calendar类 DateFormat类 使用此类来时间初始化 我们发现,时间toLocalString 会有横线: vo.setSubmitDate(new Date().toLocaleString()); 可以改为:

python中时间日期格式化符号

python中时间日期格式化符号: %y 两位数的年份表示(00-99) %Y 四位数的年份表示(000-9999) %m 月份(01-12) %d 月内中的一天(0-31) %H 24小时制小时数(0-23) %I 12小时制小时数(01-12) %M 分钟数(00=59) %S 秒(00-59) %a 本地简化星期名称 %A 本地完整星期名称 %b 本地简化的月份名称 %B 本地完整的月份名称 %c 本地相应的日期表示和时间表示 %j 年内的一天(001-366) %p 本地A.M.或P.M