Java –显示所有ZoneId及其UTC偏移量
一个Java 8示例,显示所有ZoneId及其偏移时间和分钟。
PS已通过Java 8和12测试
1.显示ZoneId和偏移量
package com.mkyong;import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;public class DisplayZoneAndOffSet {public static final boolean SORT_BY_REGION = false;public static void main(String[] argv) {Map<String, String> sortedMap = new LinkedHashMap<>();Map<String, String> allZoneIdsAndItsOffSet = getAllZoneIdsAndItsOffSet();//sort map by keyif (SORT_BY_REGION) {allZoneIdsAndItsOffSet.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEachOrdered(e -> sortedMap.put(e.getKey(), e.getValue()));} else {// sort by value, descending orderallZoneIdsAndItsOffSet.entrySet().stream().sorted(Map.Entry.<String, String>comparingByValue().reversed()).forEachOrdered(e -> sortedMap.put(e.getKey(), e.getValue()));}// print mapsortedMap.forEach((k, v) ->{String out = String.format("%35s (UTC%s) %n", k, v);System.out.printf(out);});System.out.println("\nTotal Zone IDs " + sortedMap.size());}private static Map<String, String> getAllZoneIdsAndItsOffSet() {Map<String, String> result = new HashMap<>();LocalDateTime localDateTime = LocalDateTime.now();for (String zoneId : ZoneId.getAvailableZoneIds()) {ZoneId id = ZoneId.of(zoneId);// LocalDateTime -> ZonedDateTimeZonedDateTime zonedDateTime = localDateTime.atZone(id);// ZonedDateTime -> ZoneOffsetZoneOffset zoneOffset = zonedDateTime.getOffset();//replace Z to +00:00String offset = zoneOffset.getId().replaceAll("Z", "+00:00");result.put(id.toString(), offset);}return result;}}
输出量
Etc/GMT+12 (UTC-12:00) Pacific/Pago_Pago (UTC-11:00) Pacific/Samoa (UTC-11:00) Pacific/Niue (UTC-11:00) US/Samoa (UTC-11:00) Etc/GMT+11 (UTC-11:00) Pacific/Midway (UTC-11:00) Pacific/Honolulu (UTC-10:00) Pacific/Rarotonga (UTC-10:00) Pacific/Tahiti (UTC-10:00) Pacific/Johnston (UTC-10:00) US/Hawaii (UTC-10:00) SystemV/HST10 (UTC-10:00) Etc/GMT+10 (UTC-10:00) Pacific/Marquesas (UTC-09:30) Etc/GMT+9 (UTC-09:00) Pacific/Gambier (UTC-09:00) America/Atka (UTC-09:00) SystemV/YST9 (UTC-09:00) America/Adak (UTC-09:00) US/Aleutian (UTC-09:00) Etc/GMT+8 (UTC-08:00) US/Alaska (UTC-08:00) America/Juneau (UTC-08:00) America/Metlakatla (UTC-08:00) America/Yakutat (UTC-08:00) Pacific/Pitcairn (UTC-08:00) America/Sitka (UTC-08:00) America/Anchorage (UTC-08:00) SystemV/PST8 (UTC-08:00) America/Nome (UTC-08:00) SystemV/YST9YDT (UTC-08:00) Canada/Yukon (UTC-07:00) US/Pacific-New (UTC-07:00) Etc/GMT+7 (UTC-07:00) US/Arizona (UTC-07:00) America/Dawson_Creek (UTC-07:00) Canada/Pacific (UTC-07:00) PST8PDT (UTC-07:00) SystemV/MST7 (UTC-07:00) America/Dawson (UTC-07:00) Mexico/BajaNorte (UTC-07:00) America/Tijuana (UTC-07:00) America/Creston (UTC-07:00) America/Hermosillo (UTC-07:00) America/Santa_Isabel (UTC-07:00) America/Vancouver (UTC-07:00) America/Ensenada (UTC-07:00) America/Phoenix (UTC-07:00) America/Whitehorse (UTC-07:00) America/Fort_Nelson (UTC-07:00) SystemV/PST8PDT (UTC-07:00) America/Los_Angeles (UTC-07:00) US/Pacific (UTC-07:00) America/El_Salvador (UTC-06:00) America/Guatemala (UTC-06:00) America/Belize (UTC-06:00) America/Managua (UTC-06:00) America/Tegucigalpa (UTC-06:00) Etc/GMT+6 (UTC-06:00) Pacific/Easter (UTC-06:00) Mexico/BajaSur (UTC-06:00) America/Regina (UTC-06:00) America/Denver (UTC-06:00) Pacific/Galapagos (UTC-06:00) America/Yellowknife (UTC-06:00) America/Swift_Current (UTC-06:00) America/Inuvik (UTC-06:00) America/Mazatlan (UTC-06:00) America/Boise (UTC-06:00) America/Costa_Rica (UTC-06:00) MST7MDT (UTC-06:00) SystemV/CST6 (UTC-06:00) America/Chihuahua (UTC-06:00) America/Ojinaga (UTC-06:00) Chile/EasterIsland (UTC-06:00) US/Mountain (UTC-06:00) America/Edmonton (UTC-06:00) Canada/Mountain (UTC-06:00) America/Cambridge_Bay (UTC-06:00) Navajo (UTC-06:00) SystemV/MST7MDT (UTC-06:00) Canada/Saskatchewan (UTC-06:00) America/Shiprock (UTC-06:00) America/Panama (UTC-05:00) America/Chicago (UTC-05:00) America/Eirunepe (UTC-05:00) Etc/GMT+5 (UTC-05:00) Mexico/General (UTC-05:00) America/Porto_Acre (UTC-05:00) America/Guayaquil (UTC-05:00) America/Rankin_Inlet (UTC-05:00) US/Central (UTC-05:00) America/Rainy_River (UTC-05:00) America/Indiana/Knox (UTC-05:00) America/North_Dakota/Beulah (UTC-05:00) America/Monterrey (UTC-05:00) America/Jamaica (UTC-05:00) America/Atikokan (UTC-05:00) America/Coral_Harbour (UTC-05:00) America/North_Dakota/Center (UTC-05:00) America/Cayman (UTC-05:00) America/Indiana/Tell_City (UTC-05:00) America/Mexico_City (UTC-05:00) America/Matamoros (UTC-05:00) CST6CDT (UTC-05:00) America/Knox_IN (UTC-05:00) America/Bogota (UTC-05:00) America/Menominee (UTC-05:00) America/Resolute (UTC-05:00) SystemV/EST5 (UTC-05:00) Canada/Central (UTC-05:00) Brazil/Acre (UTC-05:00) America/Cancun (UTC-05:00) America/Lima (UTC-05:00) America/Bahia_Banderas (UTC-05:00) US/Indiana-Starke (UTC-05:00) America/Rio_Branco (UTC-05:00) SystemV/CST6CDT (UTC-05:00) Jamaica (UTC-05:00) America/Merida (UTC-05:00) America/North_Dakota/New_Salem (UTC-05:00) America/Winnipeg (UTC-05:00) America/Cuiaba (UTC-04:00) America/Marigot (UTC-04:00) America/Indiana/Petersburg (UTC-04:00) Chile/Continental (UTC-04:00) America/Grand_Turk (UTC-04:00) Cuba (UTC-04:00) Etc/GMT+4 (UTC-04:00) America/Manaus (UTC-04:00) America/Fort_Wayne (UTC-04:00) America/St_Thomas (UTC-04:00) America/Anguilla (UTC-04:00) America/Havana (UTC-04:00) US/Michigan (UTC-04:00) America/Barbados (UTC-04:00) America/Louisville (UTC-04:00) America/Curacao (UTC-04:00) America/Guyana (UTC-04:00) America/Martinique (UTC-04:00) America/Puerto_Rico (UTC-04:00) America/Port_of_Spain (UTC-04:00) SystemV/AST4 (UTC-04:00) America/Indiana/Vevay (UTC-04:00) America/Indiana/Vincennes (UTC-04:00) America/Kralendijk (UTC-04:00) America/Antigua (UTC-04:00) America/Indianapolis (UTC-04:00) America/Iqaluit (UTC-04:00) America/St_Vincent (UTC-04:00) America/Kentucky/Louisville (UTC-04:00) America/Dominica (UTC-04:00) America/Asuncion (UTC-04:00) EST5EDT (UTC-04:00) America/Nassau (UTC-04:00) America/Kentucky/Monticello (UTC-04:00) Brazil/West (UTC-04:00) America/Aruba (UTC-04:00) America/Indiana/Indianapolis (UTC-04:00) America/Santiago (UTC-04:00) America/La_Paz (UTC-04:00) America/Thunder_Bay (UTC-04:00) America/Indiana/Marengo (UTC-04:00) America/Blanc-Sablon (UTC-04:00) America/Santo_Domingo (UTC-04:00) US/Eastern (UTC-04:00) Canada/Eastern (UTC-04:00) America/Port-au-Prince (UTC-04:00) America/St_Barthelemy (UTC-04:00) America/Nipigon (UTC-04:00) US/East-Indiana (UTC-04:00) America/St_Lucia (UTC-04:00) America/Montserrat (UTC-04:00) America/Lower_Princes (UTC-04:00) America/Detroit (UTC-04:00) America/Tortola (UTC-04:00) America/Porto_Velho (UTC-04:00) America/Campo_Grande (UTC-04:00) America/Virgin (UTC-04:00) America/Pangnirtung (UTC-04:00) America/Montreal (UTC-04:00) America/Indiana/Winamac (UTC-04:00) America/Boa_Vista (UTC-04:00) America/Grenada (UTC-04:00) America/New_York (UTC-04:00) America/St_Kitts (UTC-04:00) America/Caracas (UTC-04:00) America/Guadeloupe (UTC-04:00) America/Toronto (UTC-04:00) SystemV/EST5EDT (UTC-04:00) America/Argentina/Catamarca (UTC-03:00) Canada/Atlantic (UTC-03:00) America/Argentina/Cordoba (UTC-03:00) America/Araguaina (UTC-03:00) America/Argentina/Salta (UTC-03:00) Etc/GMT+3 (UTC-03:00) America/Montevideo (UTC-03:00) Brazil/East (UTC-03:00) America/Argentina/Mendoza (UTC-03:00) America/Argentina/Rio_Gallegos (UTC-03:00) America/Catamarca (UTC-03:00) America/Cordoba (UTC-03:00) America/Sao_Paulo (UTC-03:00) America/Argentina/Jujuy (UTC-03:00) America/Cayenne (UTC-03:00) America/Recife (UTC-03:00) America/Buenos_Aires (UTC-03:00) America/Paramaribo (UTC-03:00) America/Moncton (UTC-03:00) America/Mendoza (UTC-03:00) America/Santarem (UTC-03:00) Atlantic/Bermuda (UTC-03:00) America/Maceio (UTC-03:00) Atlantic/Stanley (UTC-03:00) America/Halifax (UTC-03:00) Antarctica/Rothera (UTC-03:00) America/Argentina/San_Luis (UTC-03:00) America/Argentina/Ushuaia (UTC-03:00) Antarctica/Palmer (UTC-03:00) America/Punta_Arenas (UTC-03:00) America/Glace_Bay (UTC-03:00) America/Fortaleza (UTC-03:00) America/Thule (UTC-03:00) America/Argentina/La_Rioja (UTC-03:00) America/Belem (UTC-03:00) America/Jujuy (UTC-03:00) America/Bahia (UTC-03:00) America/Goose_Bay (UTC-03:00) America/Argentina/San_Juan (UTC-03:00) America/Argentina/ComodRivadavia (UTC-03:00) America/Argentina/Tucuman (UTC-03:00) America/Rosario (UTC-03:00) SystemV/AST4ADT (UTC-03:00) America/Argentina/Buenos_Aires (UTC-03:00) America/St_Johns (UTC-02:30) Canada/Newfoundland (UTC-02:30) America/Miquelon (UTC-02:00) Etc/GMT+2 (UTC-02:00) America/Godthab (UTC-02:00) America/Noronha (UTC-02:00) Brazil/DeNoronha (UTC-02:00) Atlantic/South_Georgia (UTC-02:00) Etc/GMT+1 (UTC-01:00) Atlantic/Cape_Verde (UTC-01:00) Pacific/Kiritimati (UTC+14:00) Etc/GMT-14 (UTC+14:00) Pacific/Fakaofo (UTC+13:00) Pacific/Enderbury (UTC+13:00) Pacific/Apia (UTC+13:00) Pacific/Tongatapu (UTC+13:00) Etc/GMT-13 (UTC+13:00) NZ-CHAT (UTC+12:45) Pacific/Chatham (UTC+12:45) Pacific/Kwajalein (UTC+12:00) Antarctica/McMurdo (UTC+12:00) Pacific/Wallis (UTC+12:00) Pacific/Fiji (UTC+12:00) Pacific/Funafuti (UTC+12:00) Pacific/Nauru (UTC+12:00) Kwajalein (UTC+12:00) NZ (UTC+12:00) Pacific/Wake (UTC+12:00) Antarctica/South_Pole (UTC+12:00) Pacific/Tarawa (UTC+12:00) Pacific/Auckland (UTC+12:00) Asia/Kamchatka (UTC+12:00) Etc/GMT-12 (UTC+12:00) Asia/Anadyr (UTC+12:00) Pacific/Majuro (UTC+12:00) Pacific/Ponape (UTC+11:00) Pacific/Bougainville (UTC+11:00) Antarctica/Macquarie (UTC+11:00) Pacific/Pohnpei (UTC+11:00) Pacific/Efate (UTC+11:00) Pacific/Norfolk (UTC+11:00) Asia/Magadan (UTC+11:00) Pacific/Kosrae (UTC+11:00) Asia/Sakhalin (UTC+11:00) Pacific/Noumea (UTC+11:00) Etc/GMT-11 (UTC+11:00) Asia/Srednekolymsk (UTC+11:00) Pacific/Guadalcanal (UTC+11:00) Australia/Lord_Howe (UTC+10:30) Australia/LHI (UTC+10:30) Australia/Hobart (UTC+10:00) Pacific/Yap (UTC+10:00) Australia/Tasmania (UTC+10:00) Pacific/Port_Moresby (UTC+10:00) Australia/ACT (UTC+10:00) Australia/Victoria (UTC+10:00) Pacific/Chuuk (UTC+10:00) Australia/Queensland (UTC+10:00) Australia/Canberra (UTC+10:00) Australia/Currie (UTC+10:00) Pacific/Guam (UTC+10:00) Pacific/Truk (UTC+10:00) Australia/NSW (UTC+10:00) Asia/Vladivostok (UTC+10:00) Pacific/Saipan (UTC+10:00) Antarctica/DumontDUrville (UTC+10:00) Australia/Sydney (UTC+10:00) Australia/Brisbane (UTC+10:00) Etc/GMT-10 (UTC+10:00) Asia/Ust-Nera (UTC+10:00) Australia/Melbourne (UTC+10:00) Australia/Lindeman (UTC+10:00) Australia/North (UTC+09:30) Australia/Yancowinna (UTC+09:30) Australia/Adelaide (UTC+09:30) Australia/Broken_Hill (UTC+09:30) Australia/South (UTC+09:30) Australia/Darwin (UTC+09:30) Etc/GMT-9 (UTC+09:00) Pacific/Palau (UTC+09:00) Asia/Chita (UTC+09:00) Asia/Dili (UTC+09:00) Asia/Jayapura (UTC+09:00) Asia/Yakutsk (UTC+09:00) Asia/Pyongyang (UTC+09:00) ROK (UTC+09:00) Asia/Seoul (UTC+09:00) Asia/Khandyga (UTC+09:00) Japan (UTC+09:00) Asia/Tokyo (UTC+09:00) Australia/Eucla (UTC+08:45) Asia/Kuching (UTC+08:00) Asia/Chungking (UTC+08:00) Etc/GMT-8 (UTC+08:00) Australia/Perth (UTC+08:00) Asia/Macao (UTC+08:00) Asia/Macau (UTC+08:00) Asia/Choibalsan (UTC+08:00) Asia/Shanghai (UTC+08:00) Antarctica/Casey (UTC+08:00) Asia/Ulan_Bator (UTC+08:00) Asia/Chongqing (UTC+08:00) Asia/Ulaanbaatar (UTC+08:00) Asia/Taipei (UTC+08:00) Asia/Manila (UTC+08:00) PRC (UTC+08:00) Asia/Ujung_Pandang (UTC+08:00) Asia/Harbin (UTC+08:00) Singapore (UTC+08:00) Asia/Brunei (UTC+08:00) Australia/West (UTC+08:00) Asia/Hong_Kong (UTC+08:00) Asia/Makassar (UTC+08:00) Hongkong (UTC+08:00) Asia/Kuala_Lumpur (UTC+08:00) Asia/Irkutsk (UTC+08:00) Asia/Singapore (UTC+08:00) Asia/Pontianak (UTC+07:00) Etc/GMT-7 (UTC+07:00) Asia/Phnom_Penh (UTC+07:00) Asia/Novosibirsk (UTC+07:00) Antarctica/Davis (UTC+07:00) Asia/Tomsk (UTC+07:00) Asia/Jakarta (UTC+07:00) Asia/Barnaul (UTC+07:00) Indian/Christmas (UTC+07:00) Asia/Ho_Chi_Minh (UTC+07:00) Asia/Hovd (UTC+07:00) Asia/Bangkok (UTC+07:00) Asia/Vientiane (UTC+07:00) Asia/Novokuznetsk (UTC+07:00) Asia/Krasnoyarsk (UTC+07:00) Asia/Saigon (UTC+07:00) Asia/Yangon (UTC+06:30) Asia/Rangoon (UTC+06:30) Indian/Cocos (UTC+06:30) Asia/Kashgar (UTC+06:00) Etc/GMT-6 (UTC+06:00) Asia/Almaty (UTC+06:00) Asia/Dacca (UTC+06:00) Asia/Omsk (UTC+06:00) Asia/Dhaka (UTC+06:00) Indian/Chagos (UTC+06:00) Asia/Qyzylorda (UTC+06:00) Asia/Bishkek (UTC+06:00) Antarctica/Vostok (UTC+06:00) Asia/Urumqi (UTC+06:00) Asia/Thimbu (UTC+06:00) Asia/Thimphu (UTC+06:00) Asia/Kathmandu (UTC+05:45) Asia/Katmandu (UTC+05:45) Asia/Kolkata (UTC+05:30) Asia/Colombo (UTC+05:30) Asia/Calcutta (UTC+05:30) Asia/Aqtau (UTC+05:00) Etc/GMT-5 (UTC+05:00) Asia/Samarkand (UTC+05:00) Asia/Karachi (UTC+05:00) Asia/Yekaterinburg (UTC+05:00) Asia/Dushanbe (UTC+05:00) Indian/Maldives (UTC+05:00) Asia/Oral (UTC+05:00) Asia/Tashkent (UTC+05:00) Antarctica/Mawson (UTC+05:00) Asia/Aqtobe (UTC+05:00) Asia/Ashkhabad (UTC+05:00) Asia/Ashgabat (UTC+05:00) Asia/Atyrau (UTC+05:00) Indian/Kerguelen (UTC+05:00) Iran (UTC+04:30) Asia/Tehran (UTC+04:30) Asia/Kabul (UTC+04:30) Asia/Yerevan (UTC+04:00) Etc/GMT-4 (UTC+04:00) Asia/Dubai (UTC+04:00) Indian/Reunion (UTC+04:00) Indian/Mauritius (UTC+04:00) Europe/Saratov (UTC+04:00) Europe/Samara (UTC+04:00) Indian/Mahe (UTC+04:00) Asia/Baku (UTC+04:00) Asia/Muscat (UTC+04:00) Europe/Volgograd (UTC+04:00) Europe/Astrakhan (UTC+04:00) Asia/Tbilisi (UTC+04:00) Europe/Ulyanovsk (UTC+04:00) Asia/Aden (UTC+03:00) Africa/Nairobi (UTC+03:00) Europe/Istanbul (UTC+03:00) Etc/GMT-3 (UTC+03:00) Europe/Zaporozhye (UTC+03:00) Israel (UTC+03:00) Indian/Comoro (UTC+03:00) Antarctica/Syowa (UTC+03:00) Africa/Mogadishu (UTC+03:00) Europe/Bucharest (UTC+03:00) Africa/Asmera (UTC+03:00) Europe/Mariehamn (UTC+03:00) Asia/Istanbul (UTC+03:00) Europe/Tiraspol (UTC+03:00) Europe/Moscow (UTC+03:00) Europe/Chisinau (UTC+03:00) Europe/Helsinki (UTC+03:00) Asia/Beirut (UTC+03:00) Asia/Tel_Aviv (UTC+03:00) Africa/Djibouti (UTC+03:00) Europe/Simferopol (UTC+03:00) Europe/Sofia (UTC+03:00) Asia/Gaza (UTC+03:00) Africa/Asmara (UTC+03:00) Europe/Riga (UTC+03:00) Asia/Baghdad (UTC+03:00) Asia/Damascus (UTC+03:00) Africa/Dar_es_Salaam (UTC+03:00) Africa/Addis_Ababa (UTC+03:00) Europe/Uzhgorod (UTC+03:00) Asia/Jerusalem (UTC+03:00) Asia/Riyadh (UTC+03:00) Asia/Kuwait (UTC+03:00) Europe/Kirov (UTC+03:00) Africa/Kampala (UTC+03:00) Europe/Minsk (UTC+03:00) Asia/Qatar (UTC+03:00) Europe/Kiev (UTC+03:00) Asia/Bahrain (UTC+03:00) Europe/Vilnius (UTC+03:00) Indian/Antananarivo (UTC+03:00) Indian/Mayotte (UTC+03:00) Europe/Tallinn (UTC+03:00) Turkey (UTC+03:00) Africa/Juba (UTC+03:00) Asia/Nicosia (UTC+03:00) Asia/Famagusta (UTC+03:00) W-SU (UTC+03:00) EET (UTC+03:00) Asia/Hebron (UTC+03:00) Asia/Amman (UTC+03:00) Europe/Nicosia (UTC+03:00) Europe/Athens (UTC+03:00) Africa/Cairo (UTC+02:00) Africa/Mbabane (UTC+02:00) Europe/Brussels (UTC+02:00) Europe/Warsaw (UTC+02:00) CET (UTC+02:00) Europe/Luxembourg (UTC+02:00) Etc/GMT-2 (UTC+02:00) Libya (UTC+02:00) Africa/Kigali (UTC+02:00) Africa/Tripoli (UTC+02:00) Europe/Kaliningrad (UTC+02:00) Africa/Windhoek (UTC+02:00) Europe/Malta (UTC+02:00) Europe/Busingen (UTC+02:00) Europe/Skopje (UTC+02:00) Europe/Sarajevo (UTC+02:00) Europe/Rome (UTC+02:00) Europe/Zurich (UTC+02:00) Europe/Gibraltar (UTC+02:00) Africa/Lubumbashi (UTC+02:00) Europe/Vaduz (UTC+02:00) Europe/Ljubljana (UTC+02:00) Europe/Berlin (UTC+02:00) Europe/Stockholm (UTC+02:00) Europe/Budapest (UTC+02:00) Europe/Zagreb (UTC+02:00) Europe/Paris (UTC+02:00) Africa/Ceuta (UTC+02:00) Europe/Prague (UTC+02:00) Antarctica/Troll (UTC+02:00) Africa/Gaborone (UTC+02:00) Europe/Copenhagen (UTC+02:00) Europe/Vienna (UTC+02:00) Europe/Tirane (UTC+02:00) MET (UTC+02:00) Europe/Amsterdam (UTC+02:00) Africa/Maputo (UTC+02:00) Europe/San_Marino (UTC+02:00) Poland (UTC+02:00) Europe/Andorra (UTC+02:00) Europe/Oslo (UTC+02:00) Europe/Podgorica (UTC+02:00) Africa/Bujumbura (UTC+02:00) Atlantic/Jan_Mayen (UTC+02:00) Africa/Maseru (UTC+02:00) Europe/Madrid (UTC+02:00) Africa/Blantyre (UTC+02:00) Africa/Lusaka (UTC+02:00) Africa/Harare (UTC+02:00) Africa/Khartoum (UTC+02:00) Africa/Johannesburg (UTC+02:00) Europe/Belgrade (UTC+02:00) Europe/Bratislava (UTC+02:00) Arctic/Longyearbyen (UTC+02:00) Egypt (UTC+02:00) Europe/Vatican (UTC+02:00) Europe/Monaco (UTC+02:00) Europe/London (UTC+01:00) Etc/GMT-1 (UTC+01:00) Europe/Jersey (UTC+01:00) Europe/Guernsey (UTC+01:00) Europe/Isle_of_Man (UTC+01:00) Africa/Tunis (UTC+01:00) Africa/Malabo (UTC+01:00) GB-Eire (UTC+01:00) Africa/Lagos (UTC+01:00) Africa/Algiers (UTC+01:00) GB (UTC+01:00) Portugal (UTC+01:00) Africa/Sao_Tome (UTC+01:00) Africa/Ndjamena (UTC+01:00) Atlantic/Faeroe (UTC+01:00) Eire (UTC+01:00) Atlantic/Faroe (UTC+01:00) Europe/Dublin (UTC+01:00) Africa/Libreville (UTC+01:00) Africa/El_Aaiun (UTC+01:00) Africa/Douala (UTC+01:00) Africa/Brazzaville (UTC+01:00) Africa/Porto-Novo (UTC+01:00) Atlantic/Madeira (UTC+01:00) Europe/Lisbon (UTC+01:00) Atlantic/Canary (UTC+01:00) Africa/Casablanca (UTC+01:00) Europe/Belfast (UTC+01:00) Africa/Luanda (UTC+01:00) Africa/Kinshasa (UTC+01:00) Africa/Bangui (UTC+01:00) WET (UTC+01:00) Africa/Niamey (UTC+01:00) GMT (UTC+00:00) Etc/GMT-0 (UTC+00:00) Atlantic/St_Helena (UTC+00:00) Etc/GMT+0 (UTC+00:00) Africa/Banjul (UTC+00:00) Etc/GMT (UTC+00:00) Africa/Freetown (UTC+00:00) Africa/Bamako (UTC+00:00) Africa/Conakry (UTC+00:00) Universal (UTC+00:00) Africa/Nouakchott (UTC+00:00) UTC (UTC+00:00) Etc/Universal (UTC+00:00) Atlantic/Azores (UTC+00:00) Africa/Abidjan (UTC+00:00) Africa/Accra (UTC+00:00) Etc/UCT (UTC+00:00) GMT0 (UTC+00:00) Zulu (UTC+00:00) Africa/Ouagadougou (UTC+00:00) Atlantic/Reykjavik (UTC+00:00) Etc/Zulu (UTC+00:00) Iceland (UTC+00:00) Africa/Lome (UTC+00:00) Greenwich (UTC+00:00) Etc/GMT0 (UTC+00:00) America/Danmarkshavn (UTC+00:00) Africa/Dakar (UTC+00:00) America/Scoresbysund (UTC+00:00) Africa/Bissau (UTC+00:00) Etc/Greenwich (UTC+00:00) Africa/Timbuktu (UTC+00:00) UCT (UTC+00:00) Africa/Monrovia (UTC+00:00) Etc/UTC (UTC+00:00) Total Zone IDs 599
2.精简版
2.1这是Renan创建的简化版本(下面的评论)
package com.mkyong;import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.AbstractMap.SimpleEntry;
import java.util.Map;public class DisplayZoneAndOffSet2 {public static final boolean SORT_BY_REGION = false;public static void main(String[] args) {LocalDateTime localDateTime = LocalDateTime.now();long total = ZoneId.getAvailableZoneIds().stream().map(ZoneId::of).map(zoneId -> new SimpleEntry<>(zoneId.toString(), localDateTime.atZone(zoneId).getOffset().getId().replaceAll("Z", "+00:00"))).sorted(SORT_BY_REGION? Map.Entry.comparingByKey(): Map.Entry.<String, String>comparingByValue().reversed()).peek(e -> System.out.printf(String.format("%35s (UTC%s) %n", e.getKey(), e.getValue()))).count();System.out.println("\nTotal Zone IDs " + total);}
}
它可以在Java 8中使用,但是由于存在peek()
和count()
问题 ,因此'peek()'在Java 9及更高版本中将无法打印
2.2我做了一点修改并返回了一个新的排序图。 经过Java 8和Java 12测试。
package com.mkyong;import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.AbstractMap.SimpleEntry;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.stream.Collectors;public class DisplayZoneAndOffSet3 {public static final boolean SORT_BY_REGION = false;public static void main(String[] args) {LocalDateTime localDateTime = LocalDateTime.now();Map<String, String> result = ZoneId.getAvailableZoneIds().stream().map(ZoneId::of).map(zoneId -> new SimpleEntry<>(zoneId.toString(), localDateTime.atZone(zoneId).getOffset().getId().replaceAll("Z", "+00:00"))).sorted(SORT_BY_REGION? Map.Entry.comparingByKey(): Map.Entry.<String, String>comparingByValue().reversed()).collect(Collectors.toMap(SimpleEntry::getKey,SimpleEntry::getValue,(oldValue, newValue) -> oldValue,LinkedHashMap::new));result.forEach((k, v) -> System.out.printf(String.format("%35s (UTC%s) %n", k, v)));System.out.println("\nTotal Zone IDs " + result.size());}
}
参考文献
- 维基百科-ISO 8601日期格式
- Java –使用GMT显示TimeZone的列表
- Java 8 –如何对地图排序
- Java 8 Stream – peek()无法与count()一起使用
- Java日期时间教程
翻译自: https://mkyong.com/java8/java-display-all-zoneid-and-its-utc-offset/
http://www.taodudu.cc/news/show-4177072.html
相关文章:
- 获取java可用时区列表ZoneId
- java timezone id_java – 从SimpleTimeZone获取ZoneId
- java8 zoneid_java8之localDateTime, ZoneId, Instant使用
- java zoneid 中国_关于时区:Java 8 Time API – ZonedDateTime – 在解析时指定默认的ZoneId...
- JAVA8之 日期时间时区之 ZoneId[ZoneOffset, ZoneRegion] 笔记
- 富爸爸提高你的财商
- PHP 富文本内容中图片路径追加域名
- [Unity][FairyGUI]富文本改变颜色
- BootStrap富文本编辑器Summernote
- 第一篇博客——自我介绍篇
- ajax富客户端存在的意义,基于AJAX的网上银行富客户端研究与设计
- Android的富文本
- css-富文本编辑显示
- CSDN富文本编辑器去除空行
- 不使用插件,小程序也能完整的渲染富文本(视频展现,图片自适应)
- vue h5端实现富文本图片预览(基于 Vant 的 ImagePreview 组件)
- summernote富文本编辑器基本使用
- Java继承关系之富二代和他爹
- 设置表格列宽 —— 在富文本编辑器中的实现
- 如何在富文本中插入表情,word文档,及数学公式?
- 【leetcode刷题班】贪心题目求解
- iOS-Swift3富文本(UILable文本图文混排)
- 富文本运用实例
- java pdf 富文本_富文本编辑器保存的html内容使用itextpdf转PDF文件(css提取,内容重叠)问题解决...
- iOS-[NSAttributedString]设置富文本和计算富文本高度
- 今日头条用户搜索“室内设计”显示的自媒体粉丝数量及分布情况统计(2020.1.8)
- 使用UMI仿今日头条首页
- 字节跳动java后端一面面经(头条/西瓜视频)
- 头条流量android,今日头条的免流量看视频是怎么操作的?
- 在头条号和西瓜视频发布视频,播放量20万,却是零收益?
Java –显示所有ZoneId及其UTC偏移量相关推荐
- 高级JAVA开发必备技能:java8 新日期时间API((一)JSR-310:ZoneId 时区和偏移量)(JAVA 小虚竹)
技术活,该赏 点赞再看,养成习惯 大家好,我是小虚竹.之前有粉丝私聊我,问能不能把JAVA8 新的日期时间API(JSR-310)知识点梳理出来.答案是肯定的,谁让我宠粉呢.由于内容偏多(超十万字了) ...
- 全球城市ZoneId和UTC时间偏移量的最全对照表
前言 你好,我是A哥(YourBatman). 如你所知,现行的世界标准时间是UTC世界协调时,时区已不直接参与时间计算.但是呢,城市名称or时区是人们所能记忆和容易沟通的名词,因此我们迫切需要一个对 ...
- java 俄罗斯 id_Java ZoneId systemDefault()用法及代码示例
Java中的ZoneId类的systemDefault()方法用于返回系统默认时区. 用法: public String systemDefault() 参数:此方法不接受任何参数. 返回值:此方法返 ...
- 练习java文档ZoneId
补充ZoneId 看不懂这句话 变量 SHORT_IDS 方法 equals() 只需要是同一个zoneId创建的就好,不需要是同一个对象 from() 还是看不懂这个TemporalAccessor ...
- python获取计算机时间_在Python中获取计算机的UTC偏移量
当年话下 time.timezone:import timeprint -time.timezone它以秒为单位打印UTC偏移量(考虑到夏令时(DST),请参见time.altzone:is_dst ...
- Java显示the type xxx is already defined的解决方法
Java显示the type xxx is already defined 今天在做Java的时候,Eclipse一直显示错误,打开一看,显示The type xxx is already defin ...
- java实现gif动画效果(java显示动态图片)
关闭 关闭 脚本之家 软件下载 源码下载 在线工具 网页教程基础 服务器常用软件 手机版 关注微信 网页制作 网络编程 脚本专栏 脚本下载 数据库 CMS教程 电子书籍 平面设计 媒体动画 操作系统 ...
- java 显示中文_java显示中文乱码的解决方法
java显示中文乱码的解决方法 发布时间:2020-06-16 11:08:43 来源:亿速云 阅读:97 作者:Leah 这篇文章运用简单易懂的例子给大家介绍java显示中文乱码的解决方法,代码非常 ...
- java 显示 装配_SpringInAction--自动化装配(显示装配之 java注解配置)
Spring在配置时候有三种方案可选 1.在xml中进行显示配置 2.在java中进行显示配置 3.隐式的Bean发现机制和自动装配 今天学习的 第二种-- 在java中进行显示配置 场景: 尽管在很 ...
最新文章
- 网络和大数据成为重要文化生产力
- MIPS(loongson)linux 中添加系统调用
- Windows 技术篇-设置dns提升网速,刷新dns缓存
- android手机系统的启动流程-secureboot流程(以MTK平台为例)
- Redis过期策略及实现原理
- 中南林科大c语言程序设计,2017年中南林业科技大学计算机与信息工程学院802C语言与数据结构之C程序设计考研题库...
- python如何连续打印_Python实现批量打印功能
- eclipse实现Android登录功能,eclipse开发安卓登录
- cmd运行python脚本处理其他文件_如何在cmd命令行里运行python脚本
- leetcode讲解--693. Binary Number with Alternating Bits
- 不好意思,观察者模式跟发布订阅模式就是不一样
- 为XHR对象所有方法和属性提供钩子 全局拦截AJAX
- SQLServer导数据到Oracle
- svn分支管理的使用与经验
- 重装助手教你如何在Windows中正确调整屏幕分辨率设置
- osgEarth基础入门
- “此电话号码无法用于进行验证” 注册gmail邮箱手机号码不能验证的解决方法(已解决)
- 真正决定人生高度的,是你做事的速度
- 从无序到有序的负熵力量
- 30分钟学会js新特性
热门文章
- Unity3D 基于XLua框架实现Lua组件化开发方式(一)----基于C#调用Lua
- 美国服务器怎么样 RAKsmart美国服务器适合做什么
- 中南大学复试上机:1021:机器人走迷宫
- 罗马数字与阿拉伯数字的相互转换
- HIT计算机系统大作业
- linux c++ toolchain 配置文件,一步一步建立基于ARM+Linux的cross toolchain
- C语言内部强化培训视频教程
- Foxail邮箱远程主机强迫关闭了一个现有连接怎么解决
- matlab求解一元四次函数,excel数据函数参数是四个吗|求一个简单的一元四次函数的最大值...
- 华为云MVP周峥:气象预报是个技术活,大数据、超算、AI,缺一不可