public class Timestamp extends Date
一个围绕java.util.Date的薄包装,允许JDBC API将其标识为SQL TIMESTAMP值。 它增加了保持SQL TIMESTAMP小数秒的能力,通过允许将秒数的规格精确到纳秒。 时间戳记还提供格式化和解析操作,以支持时间戳值的JDBC转义语法。
Timestamp对象的精度计算为:
19 ,这是yyyy-mm-dd hh:mm:ss中的字符数 20 + s ,这是yyyy-mm-dd hh中的字符数:mm:ss。[fff ...]和s表示给定时间戳的缩放,分数秒精度。 注意:此类型是java.util.Date和单独纳秒值的复合。 只有整数秒存储在java.util.Date组件中。 分数秒 - 纳米 - 是分开的。 当传递不是java.sql.Timestamp的实例的对象时, Timestamp.equals(Object)方法从不返回true ,因为日期的nanos组件是未知的。 其结果是,该Timestamp.equals(Object)方法不相对于所述对称java.util.Date.equals(Object)方法。 此外, hashCode方法使用底层的java.util.Date实现,因此在其计算中不包括纳米。
由于Timestamp类与上述java.util.Date类之间的Timestamp ,建议代码不会一般视图Timestamp值java.util.Date 。 Timestamp和java.util.Date之间的Timestamp java.util.Date真的表示实现继承,而不是类型继承。
| Constructor and Description |
|---|
Timestamp(int year, int month, int date, int hour, int minute, int second, int nano)
已弃用
而是使用构造
Timestamp(long millis)
|
Timestamp(long time)
使用毫秒时间值构造一个
Timestamp对象。
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
after(Timestamp ts)
表示是否
Timestamp对象晚于给定
Timestamp对象。
|
boolean |
before(Timestamp ts)
指示此
Timestamp对象是否早于给定的
Timestamp对象。
|
int |
compareTo(Date o)
将此
Timestamp对象与给定的
Date对象进行比较。
|
int |
compareTo(Timestamp ts)
将此
Timestamp对象与给定的
Timestamp对象进行比较。
|
boolean |
equals(Object ts)
测试这个
Timestamp对象是否等于给定的对象。
|
boolean |
equals(Timestamp ts)
测试看看这个
Timestamp对象是否等于给定的
Timestamp对象。
|
static Timestamp |
from(Instant instant)
从 Instant对象获取一个Timestamp的实例。
|
int |
getNanos()
获取此
Timestamp对象的
nanos值。
|
long |
getTime()
返回自1970年1月1日以来,由此
Timestamp对象表示的00:00:00 GMT的毫秒
Timestamp 。
|
int |
hashCode()
返回此对象的哈希码值。
|
void |
setNanos(int n)
将此
Timestamp对象的
nanos字段设置为给定值。
|
void |
setTime(long time)
设置此
Timestamp对象以表示1970年1月1日00:00:00 GMT后的
time毫秒的时间点。
|
Instant |
toInstant()
将此
Timestamp对象转换为
Instant 。
|
LocalDateTime |
toLocalDateTime()
将此
Timestamp对象转换为
LocalDateTime 。
|
String |
toString()
以JDBC时间戳转义格式格式化时间戳。
|
static Timestamp |
valueOf(LocalDateTime dateTime)
从
LocalDateTime对象获取
Timestamp的实例,具有与提供的相同年份,月份,月份,小时,分钟,秒和纳秒日期时间值作为提供的
LocalDateTime 。
|
static Timestamp |
valueOf(String s)
将JDBC时间戳转义格式的
String对象转换为
Timestamp值。
|
after, before, clone, getDate, getDay, getHours, getMinutes, getMonth, getSeconds, getTimezoneOffset, getYear, parse, setDate, setHours, setMinutes, setMonth, setSeconds, setYear, toGMTString, toLocaleString, UTC@Deprecated public Timestamp(int year, int month, int date, int hour, int minute, int second, int nano)
Timestamp(long millis)
Timestamp对象。
year - 年减1900
month - 0至11
date - 1至31
hour - 0至23
minute - 0至59
second - 0至59
nano - 0至999,999,999
IllegalArgumentException - 如果纳米参数是超出范围
public Timestamp(long time)
Timestamp对象。
积分秒存储在基础日期值中;
分数秒存储在Timestamp对象的nanos字段中。
time - 从1970年1月1日00:00:00 GMT以来的毫秒。
负数是1970年1月1日00:00:00 GMT之前的毫秒数。
Calendar
public void setTime(long time)
Timestamp对象设置为1970年1月1日00:00:00 GMT后的
time毫秒的时间点。
setTime在类别
Date
time -
time数。
getTime() , Timestamp(long time) , Calendar
public long getTime()
Timestamp对象表示的00:00:00 GMT的毫秒
Timestamp 。
getTime在类别
Date
setTime(long)
public static Timestamp valueOf(String s)
String对象转换为
Timestamp值。
s - 时间戳格式为yyyy-[m]m-[d]d hh:mm:ss[.f...] 。
分数秒可以省略。
mm和dd的前导零也可以省略。
Timestamp价值
IllegalArgumentException - 如果给定的参数不具有格式
yyyy-[m]m-[d]d hh:mm:ss[.f...]
public String toString()
yyyy-mm-dd hh:mm:ss.fffffffff ,其中ffffffffff表示纳秒。
toString在类别
Date
String对象在
yyyy-mm-dd hh:mm:ss.fffffffff格式
Date.toLocaleString() ,
Date.toGMTString()
public int getNanos()
Timestamp对象的
nanos值。
Timestamp对象的小数秒组件
setNanos(int)
public void setNanos(int n)
Timestamp对象的
nanos字段设置为给定值。
n - 新的分数秒分量
IllegalArgumentException - 如果给定的参数大于999999999或小于0
getNanos()
public boolean equals(Timestamp ts)
Timestamp对象是否等于给定的
Timestamp对象。
ts -
Timestamp价值比较
true如果给定的Timestamp对象等于这个Timestamp对象;
false否则
public boolean equals(Object ts)
Timestamp对象是否等于给定的对象。
已添加此版本的方法equals以修复Timestamp.equals(Timestamp)的不Timestamp.equals(Timestamp) ,并保留与现有类文件的向后兼容性。
注意:该方法对于基类中的equals(Object)方法是equals(Object) 。
equals在类别
Date
ts -
Object对比的
Object值
true如果给定Object是一个实例Timestamp等于这个Timestamp对象;
false否则
Date.getTime()
public boolean before(Timestamp ts)
Timestamp对象是否早于给定的
Timestamp对象。
ts -
Timestamp对比的
Timestamp值
true如果这个Timestamp对象较早;
false否则
public boolean after(Timestamp ts)
Timestamp对象是否晚于给定的
Timestamp对象。
ts -
Timestamp对比的
Timestamp值
true如果这个Timestamp对象稍后;
false否则
public int compareTo(Timestamp ts)
Timestamp对象与给定的
Timestamp对象进行比较。
ts -所述
Timestamp对象物相比,这
Timestamp对象
0如果两个Timestamp对象相等;
一个值小于0如果这个Timestamp对象是在给定的参数之前;
并且如果此Timestamp对象在给定参数之后,则值大于0 。
public int compareTo(Date o)
Timestamp对象与给定的
Date对象进行比较。
compareTo在界面
Comparable<Date>
compareTo在类别
Date
o -的
Date被比作此
Timestamp对象
Timestamp对象和给定对象相等,则值为0 ;
一个值小于0如果这个Timestamp对象是在给定的参数之前;
并且如果此Timestamp对象在给定参数之后,则值大于0 。
public int hashCode()
Date.getTime()方法返回的原始long值的两半的异或。
也就是说,哈希码是表达式的值:
(int)(this.getTime()^(this.getTime() >>> 32))
hashCode方法使用底层的java.util.Date实现,因此在其计算中不包括纳米。
hashCode在类别
Date
Object.equals(java.lang.Object) ,
System.identityHashCode(java.lang.Object)
public static Timestamp valueOf(LocalDateTime dateTime)
Timestamp从LocalDateTime对象,以相同的年,月,月日,时,分,秒和毫微秒日期时间值作为提供LocalDateTime 。
提供的LocalDateTime被解释为本地时区的本地日期时间。
dateTime - a
LocalDateTime转换
Timestamp对象
NullPointerException - 如果
dateTime为空。
public LocalDateTime toLocalDateTime()
Timestamp对象转换为LocalDateTime 。
转换创建一个LocalDateTime表示同一年,月,日,时,分,秒和毫微秒日期时间值,因为这Timestamp在本地时区。
LocalDateTime对象
public static Timestamp from(Instant instant)
Instant对象获取一个Timestamp的实例。
Instant可以在未来进一步存储时间点上的积分,并且在过去比Date进一步。 在这种情况下,此方法将抛出异常。
instant - 即时转换
Timestamp代表在提供的时刻的时间线上的相同点
NullPointerException - 如果
instant为空。
IllegalArgumentException - 如果瞬间太大,无法表示为
Timesamp
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.