2017-03-31 56 views
0

在java.time類中,我看不到一個函數來獲取可用的時區id列表。我可以撥打java.util.TimeZone庫中的getAvailableIDs()。不過,我想用Java 8代替。有沒有辦法做到這一點?如何獲得Java 8中所有時區ID的列表

+0

爲什麼你不能使用'java.util.TimeZone'? [它在Java 8中可用](https://docs.oracle.com/javase/8/docs/api/index.html?java/util/TimeZone.html)。 –

+3

如何從'java.time.ZoneId'設置' getAvailableZoneIds()'(自1.8開始),請參閱https://docs.oracle.com/javase/8/docs/api/java/time/ZoneId.html參考 –

+0

@ Code-Apprentice java.util.TimeZone的問題是它不會過濾不推薦的3個字符時區,如BST,EST等。 – long

回答

3

ZoneId存在於java.time包中。你是這個意思嗎?

ZoneId.getAvailableZoneIds()

本集包括所有可用的基於區域的ID的字符串形式。 返回集中不包含基於偏移的區域ID。 ID可以通過 傳遞給(String)來創建ZoneId。

儘管在典型的 應用程序中,該組ID是固定的,但該區域ID的集合可以隨時間增加。每次調用此方法的線程安全性爲 。

相關問題