在轉(zhuǎn)換時(shí),使用Calendar類中的getTimeInMillis方法可以將Calendar對(duì)象轉(zhuǎn)換為相對(duì)時(shí)間。在將相對(duì)時(shí)間轉(zhuǎn)換為Calendar對(duì)象時(shí),首先創(chuàng)建一個(gè)Calendar對(duì)象,然后再使用Calendar類的setTimeInMillis方法設(shè)置時(shí)間即可。
應(yīng)用示例
下面以兩個(gè)簡(jiǎn)單的示例介紹時(shí)間和日期處理的基本使用。
1、計(jì)算兩個(gè)日期之間相差的天數(shù)
例如計(jì)算2010年4月1號(hào)和2009年3月11號(hào)之間相差的天數(shù),則可以使用時(shí)間和日期處理進(jìn)行計(jì)算。
該程序?qū)崿F(xiàn)的原理為:首先代表兩個(gè)特定的時(shí)間點(diǎn),這里使用Calendar的對(duì)象進(jìn)行代表, 設(shè)為首頁(yè) 然后將兩個(gè)時(shí)間點(diǎn)轉(zhuǎn)換為對(duì)應(yīng)的相對(duì)時(shí)間,求兩個(gè)時(shí)間點(diǎn)相對(duì)時(shí)間的差值,然后除以1天的毫秒數(shù)(24小時(shí)X60分鐘X60秒X1000毫秒)即可獲得對(duì)應(yīng)的天數(shù)。實(shí)現(xiàn)該示例的完整代碼如下:
import java.util.*;
/**
* 計(jì)算兩個(gè)日期之間相差的天數(shù)
*/
public class DateExample1 {
public static void main(String[] args) {
//設(shè)置兩個(gè)日期
//日期:2009年3月11號(hào)
Calendar c1 = Calendar.getInstance();
c1.set(2009, 3 - 1, 11);
//日期:2010年4月1號(hào)
Calendar c2 = Calendar.getInstance();
c2.set(2010, 4 - 1, 1);
//轉(zhuǎn)換為相對(duì)時(shí)間
long t1 = c1.getTimeInMillis();
long t2 = c2.getTimeInMillis();
//計(jì)算天數(shù)
long days = (t2 - t1)/(24 * 60 * 60 * 1000);
System.out.println(days);
}
}
相關(guān)推薦:2009年計(jì)算機(jī)等考二級(jí)JAVA輔導(dǎo):強(qiáng)制類型轉(zhuǎn)換北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |