java_utildate.htm
来自「写给JSP初级程序员的书」· HTM 代码 · 共 390 行 · 第 1/2 页
HTM
390 行
返回日期的秒。返回值在0到61之间。60和61 仅仅在Java虚拟机在处理闰秒时出现。 </p>
<p> 2.3设置Date对象中的年、月、日、时、分、秒元素<br>
setYear<br>
public void setYear(int year)<br>
setMonth<br>
public void setMonth(int month)<br>
setDate<br>
public void setDate(int date)<br>
setHours<br>
public void setHours(int hours)<br>
setMinutes<br>
public void setMinutes(int minutes)<br>
setSeconds<br>
public void setSeconds(int seconds)<br>
这组方法均不推荐使用。在JDK 1.1版中,分别被Calendar.set(Calendar.YEAR, year + 1900)、Calendar.set(Calendar.MONTH,
int month)、Calendar.set(Calendar.DAY_OF_MONTH, int date)、Calendar.set(Calendar.HOUR_OF_DAY,
int hours)、Calendar.set(Calendar.MINUTE, int minutes)、Calendar.set(Calendar.SECOND,
int seconds)代替。 <br>
其功能依次为:<br>
设置Date对象的年份为指定值加1900。Date对象的其它属性不变(如果日期是2月29日,而所设置的年是非闰年,新的日期将是3月1日。)
<br>
设置日期的月份为指定值。日期的其它元素不变。如果日期是10月31日,而现在月份设为6月,新的日期将是7月1日,因为6月只有30天。
<br>
设置Date对象的日期为指定值。日期的其它元素不变。如果日期是4月31日,而现在日期设为31日,新的日期将是5月1日,因为4月只有30天。
<br>
设置这个Date对象的小时,日期的其它元素不变。 <br>
设置这个Date对象的分钟为指定值,日期的其它元素不变。 <br>
将这个Date对象的秒设置为指定值。对象的其它属性不变。 <br>
其参数依次为: <br>
year - 年份。<br>
month - 月份在0-11之间。 <br>
date - 日期在1-31之间。 <br>
hours - 小时值。 <br>
minutes - 分钟。 <br>
seconds - 秒。</p>
<p> 2.4两个日期对象的比较<br>
before<br>
public boolean before(Date when)<br>
after<br>
public boolean after(Date when)<br>
equals<br>
public boolean equals(Object obj)<br>
compareTo<br>
public int compareTo(Date anotherDate)<br>
compareTo<br>
public int compareTo(Object o)<br>
其功能依次为:<br>
测试这个日期是否在指定日期之前。 <br>
测试这个日期是否在指定日期之后。 <br>
比较两个日期是否相等。当且仅当参数不为空,而且参数与这个Date对象完全相等时(精确到毫秒级),返回true。事实上,两个Date对象相等,也就是说getTime方法返回同一个长整型数据。<br>
比较两个日期的顺序。 <br>
将这个日期与另一个对象比较。如果这个对象是一个日期,其功能将与compareTo(Date)完全相似。否则会抛出一个ClassCastException例外(因为日期只能与另一个日期比较)。
<br>
其参数依次为: <br>
when - 一个日期。 <br>
when - 一个日期。 <br>
obj - 用来比较的对象。 <br>
anotherDate - 用来比较的Date。 <br>
o - 用来比较的Object。 <br>
返回依次为: <br>
当且仅当这个Date对象早于when时返回true;否则返回false。<br>
当且仅当这个Date对象迟于when时返回true;否则返回false。<br>
两个对象相等时返回true,否则返回false。 <br>
如果两个日期相等返回0;如果日期在参数值之前返回小于0的数值;如果日期在参数值之前返回大于0的数值。 <br>
如果两个日期相等返回0;如果日期在参数值之前返回小于0的数值;如果日期在参数值之前返回大于0的数值。 </p>
<p> 2.5日期对象及其对应的长整型表示<br>
getTime<br>
public long getTime()<br>
返回这个Date对象相对于GMT 1970年1月1日00:00:00的毫秒数。 <br>
返回: <br>
相对于GMT 1970年1月1日00:00:00的毫秒数。 </p>
<p> setTime<br>
public void setTime(long time)<br>
按照相对于GMT 1970年1月1日00:00:00的毫秒数设置这个Date对象。 <br>
参数: <br>
time - 毫秒数。<br>
<br>
2.6其它<br>
clone<br>
public Object clone()<br>
返回这个对象的一个拷贝。 <br>
返回: <br>
这个实例的一个拷贝。 <br>
抛出: <br>
CloneNotSupportedException - 如果这个对象的类不支持Cloneable接口。将抛出这个例外。 <br>
OutOfMemoryError - 没有足够的内存。 </p>
<p> UTC<br>
public static long UTC(int year,<br>
int month,<br>
int date,<br>
int hrs,<br>
int min,<br>
int sec)<br>
不推荐使用。 在JDK 1.1版中,被Calendar.set(year + 1900, month, date, hrs, min,
sec)或GregorianCalendar(year + 1900, month, date, hrs, min, sec),
(使用UTC TimeZone),跟随在Calendar.getTime().getTime() 后面所代替。 <br>
根据参数确定日期和时间。这个参数被解析为年、月、日、时、分、秒。就和在Date 构造函数中一样,只不过是使用的UTC而不是使用当前时区。这个时间将被表示为相对于GMT
1970年1月1日00:00:00的毫秒数。 <br>
参数: <br>
year - 年份减去1900。 <br>
month - 月份在0-11之间。 <br>
date - 日期在1-31之间。 <br>
hrs - 小时在0-23之间。 <br>
min - 分钟在0-59之间。 <br>
sec - 秒在0-59之间。 <br>
返回: <br>
参数所对应日期相对于GMT 1970年1月1日00:00:00的毫秒数。 </p>
<p> hashCode<br>
public int hashCode()<br>
返回这个对象的hash代码值,也就是说对getTime()方法返回的长整型数值作如下运算: <br>
(int)(this.getTime()^(this.getTime() >>> 32))<br>
返回: <br>
这个对象的hash代码值。</p>
<p> toString<br>
public String toString()<br>
将这个Date对象转换成如下格式的String: <br>
dow mon dd hh:mm:ss zzz yyyy<br>
在这里: <br>
dow是星期(Sun, Mon, Tue, Wed, Thu, Fri, Sat)。 <br>
mon是月份(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)。
<br>
dd是日期(01到31),用两位数字表示。 <br>
hh是小时(00到23),用两位数字表示。 <br>
mm是分钟(00到59),用两位数字表示。 <br>
ss是秒(00到61,用两位数字表示。 <br>
zzz是时区。标准的时区的缩写和在parse方法中的一样。如果时区信息无效zzz为空 - 也就是说,不包含任何字符。 <br>
yyyy是年份,用四位数字表示。<br>
返回: <br>
表示这个日期的字符串。 </p>
<p> toLocaleString<br>
public String toLocaleString()<br>
不推荐使用。 JDK 1.1版中,被DateFormat.format(Date date)代替。 <br>
按照当前格式生成反映这个Date对象的字符串。这种格式字符串对于Java应用程序开发员应该是相当熟悉的。然而,它与ISO C中strftime()函数的"%c"格式并不完全相同。
<br>
返回: <br>
反映这个日期的字符串,使用当前的约定。 </p>
<p> toGMTString<br>
public String toGMTString()<br>
不推荐使用。 JDK 1.1版中,被DateFormat.format(Date date)(使用GMT 时区)代替。 <br>
按以下格式建立一个反映这个Date对象的字符串: d mon yyyy hh:mm:ss GMT<br>
其中: <br>
d日期(1到31),用一到两位数字表示。 <br>
mon月份(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)。
<br>
yyyy年份,用四位数字表示。 <br>
hh小时(00到23),用两位数字表示。 <br>
mm分钟(00到59),用两位数字表示。 <br>
ss秒(00到61),用两位数字表示。 <br>
GMT指定为格林尼治标准时。<br>
返回值与当前时区无关。<br>
返回: <br>
反映当前日期的字符串(使用Internet GMT)。</p>
<p> getTimezoneOffset<br>
public int getTimezoneOffset()<br>
不推荐使用。 JDK 1.1版中,被Calendar.get(Calendar.ZONE_OFFSET) + Calendar.get(Calendar.DST_OFFSET)代替。
<br>
返回时区,精确到分钟。 <br>
例如,在麻萨诸塞州,应该是格林尼治西5小时: <br>
new Date(96, 1, 14).getTimezoneOffset()返回300,因为在1996年1月14日,使用标准时间(东部标准时);但是,new
Date(96, 5, 1).getTimezoneOffset()返回240,因为在1996年5月1日,使用夏令时(东部夏令时)。
<br>
这个方法返回值和下列计算的结果一样:<br>
(this.getTime() - UTC(this.getYear(), <br>
this.getMonth(), <br>
this.getDate(),<br>
this.getHours(), <br>
this.getMinutes(), <br>
this.getSeconds())) / (60 * 1000)<br>
返回值: <br>
当前时区的设置,精确到分钟。 </p>
<!-- #EndEditable --></td>
<td width="20"> </td>
</tr>
<tr>
<td width="20" height="11"> </td>
<td width="541" height="11"><!-- #BeginEditable "7" --><!-- #EndEditable --></td>
<td width="101" height="11">
</td>
<td width="20" height="11"> </td>
</tr>
</table><div align="center"> <br>
</div>
</td>
</tr>
</table>
<div align="center">
<br>
</div>
</body>
<!-- #EndTemplate -->
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?