请问java中有时间类型吗?如果没有如何转换为时间类型??(内容空?)
请问java中有时间类型吗?如果没有如何转换为时间类型??(内容空?)
楼主hellohong1997(question)2002-10-08 17:00:31 在 Java / J2SE / 基础类 提问如题 问题点数:0、回复次数:6Top
1 楼pentax()回复于 2002-10-08 17:25:45 得分 0
Date,java.util.Calendar,java.text.SimpleDateFormat,
很多这样的贴子,搜一下。Top
2 楼shanmao(山猫)回复于 2002-10-08 17:54:11 得分 0
类 java.util.Date
java.lang.Object
|
+----java.util.Date
--------------------------------------------------------------------------------
public class Date
extends Object
implements Serializable, Cloneable
下列类的父类:
Date, Time, Timestamp
类 Date 描述了一个精度为毫秒的特定时间实例。
JDK 1.1 以前的版本,类 Date 有两个附加的功能。 它允许将日期解释为年、月、日、时、分和秒值。也允许对日期字符串进行格式化和分析。不幸的是,这些功能的 API 并不遵从国际化惯例。作为 JDK 1.1 的类,Calendar 类用于日期和时间域之间的转换,DateFormat 类用于对日期字符串进行格式化和分析。建议不要使用 Date 类中相应方法。
尽管 Date 类表示通用协调时间 (UTC) ,但它不能确切的表示它,这取决于 Java 虚拟机的主机环境。 在任何情况下,几乎所有现代的操作系统都假设 1 天 = 24 × 60 × 60 = 86400 秒。但是在 UTC 中,每一两年就会有附加的一秒,称为“闰秒”。 闰秒总是作为一天的最后一秒被加入,并且总是加在 11 月 31 日或 6 月 30 日。 例如,由于添加了闰秒,1995 年的最后一分钟长为 61 秒。 大多数的计算机时钟都不足以精确到能够反映出闰秒的差别。
有些计算机标准定义为格林威治标准时间 (GMT),它同国际标准时间 (UT) 是等价的。GMT 是标准的“通俗”名称;UT 是该标准的“科学”名称。 UTC 和 UT 之间的区别是 UTC 是基于原子时钟的,而 UT 是基于宇宙观测,这在实际使用中只是一个细微的不可见的差别。因为地球的转速不是固定的 ( 它以许多复杂的方式加速或减速 ),UT 并不总是固定的方式流逝的。将闰秒引入 UTC ,为的是使 UTC 在 UT1 的 0.9 秒的误差范围内, UT1 是 UT 的修改版。还有其它的时间和日期系统;例如,基于卫星全球定位系统 (GPS) 使用的时标是与 UTC 相同的,但它并不对闰秒进行调整。一个有趣的未来信息来源是美国海军天文台,特别是地址为:
http://tycho.usno.navy.mil
的时间管理委员会和
他们的地址为:
http://tycho.usno.navy.mil/systime.html
的“时间系统”定义。
在所有接受或返回年、月、日、时、分和秒值的 Date 类方法中使用下列表示法:
year y 由整数 y - 1900 表示。
month 由 0 到 11 间的一个整数表示;0 表示一月,1 表示二月等等;11 表示 十二月。
通常的方式下,日 ( 一月中的日 ) 由 1 到 31 之间的一个整数表示。
hour 由 0 到 23 之间的一个整数表示。所以,从午夜到凌晨 1 点,hour 为 0,从中午到下午 1 点,hour 为 12。
通常的方式下, minite 由 0 到 59 之间的一个整数表示。
second 是 0 到 60 之间的一个整数表示;数值 60 只用于跳跃秒数并且只用于能够正确跟踪闰秒的 Java 实现中。
在任何情况下,传给方法的参数不能超出特定的范围;例如,一个日期可能被指定为 1 月 32 日,它将被解释为 2 月 1 日。
来自:
JDK1.0
参见:
DateFormat, Calendar, TimeZone
--------------------------------------------------------------------------------
构造子索引
Date()
分配一个 Date 对象并将它初始化,使它表示根据最近的毫秒时间测定的分配的时间。
Date(int, int, int)
分配一个 Date 对象并将它初始化,使它表示由参数 year、month 和 date 指定的本地时间一天的开始,即午夜。 不推荐使用该方法。
Date(int, int, int, int, int)
分配一个 Date 对象并将它初始化,使它表示由参数 year、month、date、hrs 和 min 指定的日期特定的本地时间的时、分。 不推荐使用该方法。
Date(int, int, int, int, int, int)
分配一个 Date 对象并将它初始化,使它表示由参数 year、month、date、 hrs、min 和 sec 指定的日期特定的本地时间的时、分、秒。 不推荐使用该方法。
Date(long)
分配 Date 对象并初始化它,表示从 GMT 1970 年 1 月 1 日 00:00:00 起指定的毫秒数。
Date(String)
分配一个 Date 对象并将它初始化,使它表示由字符串 s 指定的日期和时间,该字符串由 parse 方法解释。 不推荐使用该方法。
--------------------------------------------------------------------------------
方法索引
after(Date)
测试该日期是否在某指定的日期之后。
before(Date)
测试该日期是否在某指定的日期之前。
equals(Object)
比较两个日期。
getDate()
返回该日期表示的一月中的日。 不推荐使用该方法。
getDay()
返回该日期表示的星期。 不推荐使用该方法。
getHours()
返回该日期表示的时。 不推荐使用该方法。
getMinutes()
返回该日期表示的分。 不推荐使用该方法。
getMonth()
返回该日期表示的月。 不推荐使用该方法。
getSeconds()
返回该日期表示的秒。 不推荐使用该方法。
getTime()
返回该日期表示的从 GMT 1970 年 1 月 1 日 00:00:00 起的毫秒数。
getTimezoneOffset()
返回本地时区的偏移量。 不推荐使用该方法。
getYear()
返回该日期表示的年,并减去 1900。 不推荐使用该方法。
hashCode()
返回该对象的散列码。
parse(String)
给定一个表示时间的字符串,分析它并返回时间值。 不推荐使用该方法。
setDate(int)
将一月中的日设置为指定的数值。 不推荐使用该方法。
setHours(int)
将该日期的时设置为指定的数值。 不推荐使用该方法。
setMinutes(int)
将该日期的分设置为指定的数值。 不推荐使用该方法。
setMonth(int)
将该日期的月设置为指定的数值。 不推荐使用该方法。
setSeconds(int)
将该日期的秒设置为指定的数值。 不推荐使用该方法。
setTime(long)
设置日期表示从 GMT 1970 年 1 月 1 日 00:00:00 起的毫秒数。
setYear(int)
设置该日期的年为指定数值加 1900。 不推荐使用该方法。
toGMTString()
创建该日期的字符串表示。 不推荐使用该方法。
toLocaleString()
以依赖实现的形式创建该日期的字符串表示。 不推荐使用该方法。
toString()
返回该日期规范的字符串表示。
UTC(int, int, int, int, int, int)
根据参数确定日期和时间。 不推荐使用该方法。
Top
3 楼shidu(十度)回复于 2002-10-08 17:59:51 得分 0
来晚了
Top
4 楼wjmmml(笑着悲伤)回复于 2002-10-08 18:10:03 得分 0
太详细了,呵,佩服。Top
5 楼shanmao(山猫)回复于 2002-10-28 11:47:31 得分 0
upTop
6 楼alphazhao(迷路飞羊)回复于 2002-10-28 12:29:10 得分 0
faint
哪找的这些资料,牛×啊……
顺便贴一个:
转为不含时分秒的对应数据库日期变量:
/**
* 作者:alphazhao
* 日期:2002-5-27
* 描述:将一个string类型为"yyyy-MM-dd"的字符串转换为一个系统日期
* 日期为util.Date类型无法插入数据库,需改为sql.Date类型
* */
public class StringToDate {
public final static java.sql.Date string2Date(String dateString)
throws java.lang.Exception {
DateFormat dateFormat;
dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH);
dateFormat.setLenient(false);
java.util.Date timeDate = dateFormat.parse(dateString);//util类型
java.sql.Date dateTime = new java.sql.Date(timeDate.getTime());//sql类型
return dateTime;
}
}
转为含时分秒的对应数据库日期变量:
/**
* 作者:alphazhao
* 日期:2002-5-27
* 描述:将一个string类型为"yyyy-MM-dd kk:mm:ss"的字符串转换为一个系统日期
* */
public class StringToDate {
public final static java.sql.Timestamp string2Date(String dateString)
throws java.lang.Exception {
DateFormat dateFormat;
dateFormat = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss", Locale.ENGLISH);
dateFormat.setLenient(false);
java.util.Date timeDate = dateFormat.parse(dateString);//util类型
//java.sql.Date dateTime = new java.sql.Date(timeDate.getTime());//sql类型
java.sql.Timestamp dateTime = new java.sql.Timestamp(timeDate.getTime());//Timestamp类型
return dateTime;
}
}
Top
-
相关文章
2秒记住本站域名
玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的ReadyGo.com.cn
