首頁  >  文章  >  Java  >  爪哇時區

爪哇時區

PHPz
PHPz原創
2024-08-30 15:53:26614瀏覽

它是java.util 套件中java.lang.Object 類別的直接子類,有助於表示程式運行的特定區域的時區偏移量,或定義為參數的時區,也有助於保存其他更改,例如夏令時;它實現了可序列化和可克隆的接口,使其兼容網絡傳輸以及將一個時區對象的設置克隆到另一個時區對像中。

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

Java中TimeZone類別的方法

此類別使用以下 5 個參數來儲存時區資訊:

  • public static final int SHORT = 1;
  • public static final int LONG= 1:
  • 私人靜態最終 int ONE_MINUTE = 60*1000;
  • 私人靜態最終 int ONE_HOUR = 60*ONE_MINUTE;
  • 私有靜態最終 int ONE_DAY = 24*ONE_HOUR;

以下是此類中可用的方法:

1。 public Abstract int getOffset(intera,intyear,intmonth,intday,intdayOfWeek,intmilliseconds)

此方法有助於檢索時區的偏移量(以毫秒為單位),該偏移量可以添加到 GMT 以獲取參數中指定的特定日期的本地時間。這裡月份參數中的 0 表示一月。

代碼:

package Try;
import java.util.TimeZone;
publicclass Office
{
publicstaticvoid main(String[] args)
{
TimeZone obj     = TimeZone.getTimeZone("Africa/Bangui");
System.out.println("Offset value at 2020,5,6 date is  = " + obj.getOffset(1, 2020, 2, 5, 6, 2000));
}
}

輸出:

爪哇時區

2。 Abstract public void setRawOffset(int offsetMillis)

此方法用於將時區基準設定為 GMT,用於透過將本地時間新增至 UTC 來取得本地時間。

3。 public Abstract int getRawOffset()

它用於獲取與夏令時無關的毫秒數,並添加到 UTC 以檢索標準時區。

代碼:

import java.util.TimeZone;
publicclass Office
{
publicstaticvoid main(String[] args)
{
TimeZone obj     = TimeZone.getTimeZone("Pacific/Pago_Pago");
System.out.println("RawOffset in the start is = " + obj.getRawOffset());
obj.setRawOffset(7000000);
System.out.println("RawOffset "+ "set to 7000000");
System.out.println("RawOffset after changes is = "          + obj.getRawOffset());

}
}

輸出:

爪哇時區

4。 public boolean ObservesDaylightTime()

此方法用於檢查時區目前是否處於夏令時,或者是否為將來的時間表更改安排了任何轉換,並發送 true,在這種情況下發送 false。

代碼:

import java.util.*;
publicclass Office
{
publicstaticvoid main(String[] args)
{
TimeZone obj     = TimeZone.getTimeZone("Europe/Rome");
System.out.println(obj.getID()+" is in Daylight or will be in future transitions = " + obj.observesDaylightTime());
}
}

輸出:

爪哇時區

5。 static String[] getAvailableIDs()

用於以字串格式取得該時區下所有支援的可用ID的陣列。

代碼:

import java.util.*;
publicclass Office
{
publicstaticvoid main(String[] args)
{
String[] idArray= TimeZone.getAvailableIDs();
System.out.println("Available IDs are \n");
for(String a :idArray){
System.out.print(a);
System.out.print("\n");
}
}
}

輸出:

爪哇時區

6。 public String getDisplayName(boolean daylight, int style, Locale locale)

此方法用於取得所使用的時區名稱。如果 daylight 參數為 true,則傳回夏令時時區;否則,傳回標準時區。樣式參數指定是否需要長名稱或短名稱並且在指定的區域設定中。如果給定的樣式無效,則會拋出 IllegalArgumentException;如果未指定 locale 參數,則會拋出 NullPointerException。

7。 public static TimeZone getDefault()

此方法幫助我們檢索特定區域的時區的預設值。

8。 public StringgetID()

用於檢索該時區的ID。

解釋上述三種方法的範例程式:

代碼:

import java.util.TimeZone;
publicclass Office
{
publicstaticvoid main(String[] args)
{
TimeZone obj1    = TimeZone.getDefault();
System.out.println("Display Name of default Offset is = " + obj1.getDisplayName(false,0));
System.out.println("Id of Default Offset = " + obj1.getID());
}
}

輸出:

爪哇時區

9。 public Abstract boolean inDaylightTime(Date date)

此方法用於查詢參數中給出的特定日期是否處於該特定時區的夏令時,並傳回 true,否則傳回 false。

代碼:

import java.util.*;
publicclass Office
{
publicstaticvoid main(String[] args)
{
TimeZone obj     = TimeZone.getTimeZone("Europe/Rome");
Date dt = new Date();
System.out.println(dt.toString()+" is in Daylight Savings or not = " + obj.inDaylightTime(dt));
}
}

輸出:

爪哇時區

10。公有抽象布林值 useDaylightTime()

此方法用於驗證給定時區是否支援夏令時時間表變更;如果是,則傳回 true,否則傳回 false。

代碼:

import java.util.*;
publicclass Office
{
publicstaticvoid main(String[] args)
{
TimeZone obj     = TimeZone.getTimeZone("Europe/Rome");
System.out.println(obj.getID()+" supports Daylight Savings or not = \n" + obj.useDaylightTime());
}
}

輸出:

爪哇時區

11。公共布爾值具有 SameRules(TimeZone tz1)

此方法有助於分析呼叫的時區物件與傳入其參數的時區物件是否具有相同的規則,並傳回 true,否則傳回 false。

Code:

import java.util.*;
publicclass Office
{
publicstaticvoid main(String[] args)
{
TimeZone obj     = TimeZone.getTimeZone("Africa/Bangui");
TimeZone obj1     = TimeZone.getTimeZone("Europe/Rome");
System.out.println(obj.getID() + " has Same Rules as of " +obj.getID() + " = " +obj.hasSameRules(obj));
System.out.println(obj.getID() + " has Same Rules as of " +obj1.getID() + " = " +obj.hasSameRules(obj));
}
}

Output:

爪哇時區

Conclusion

It is a serializable and cloneable class present in java.util package and is a direct sub class of java.lang.object class which helps to represent the time zone offset of a particular region in the 2 static final and int fields long and short and support various operations using the supported methods in them.

以上是爪哇時區的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn