https://blogs.oracle.com/brunoborges/entry/get_all_countries_using_java
以下のようなエントリを見て、以前同じようなエントリを投稿したなぁ、と考えていました。
Get all the country using Java Locale List
http://www.javatutorialscorner.com/2014/02/get-all-county-using-java-locale-list.html
このコードを実行すると、こんな感じの結果になります。package com.javatutorialscorner.util; import java.util.Locale; public class JavaCountyList { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String[] locales = Locale.getISOCountries(); for (String country : locales) { Locale locale = new Locale("", country); System.out.println("Country : " + locale.getDisplayCountry() + " \t\t\t\t:\t Country Code : " + locale.getCountry()); } } }
以前のエントリではJava SE 8のLambdaとStream APIを使っていました。それでは、"display country"プロパティでロケールを並べ替える呼び出しを含むコードをご紹介しましょう。Country : Andorra : Country Code : AD Country : United Arab Emirates : Country Code : AE Country : Afghanistan : Country Code : AF Country : Antigua and Barbuda : Country Code : AG Country : Anguilla : Country Code : AI Country : Albania : Country Code : AL Country : Armenia : Country Code : AM Country : Netherlands Antilles : Country Code : AN Country : Angola : Country Code : AO Country : Antarctica : Country Code : AQ Country : Argentina : Country Code : AR Country : American Samoa : Country Code : AS Country : Austria : Country Code : AT Country : Australia : Country Code : AU Country : Aruba : Country Code : AW Country : Åland Islands : Country Code : AX Country : Azerbaijan : Country Code : AZ Country : Bosnia and Herzegovina : Country Code : BA Country : Barbados : Country Code : BB Country : Bangladesh : Country Code : BD Country : Belgium : Country Code : BE Country : Burkina Faso : Country Code : BF Country : Bulgaria : Country Code : BG Country : Bahrain : Country Code : BH Country : Burundi : Country Code : BI Country : Benin : Country Code : BJ Country : Saint Barthélemy : Country Code : BL Country : Bermuda : Country Code : BM Country : Brunei : Country Code : BN Country : Bolivia : Country Code : BO Country : Bonaire, Sint Eustatius and Saba : Country Code : BQ Country : Brazil : Country Code : BR Country : Bahamas : Country Code : BS Country : Bhutan : Country Code : BT Country : Bouvet Island : Country Code : BV Country : Botswana : Country Code : BW Country : Belarus : Country Code : BY Country : Belize : Country Code : BZ Country : Canada : Country Code : CA Country : Cocos Islands : Country Code : CC Country : The Democratic Republic Of Congo : Country Code : CD Country : Central African Republic : Country Code : CF Country : Congo : Country Code : CG Country : Switzerland : Country Code : CH Country : Côte d'Ivoire : Country Code : CI Country : Cook Islands : Country Code : CK Country : Chile : Country Code : CL Country : Cameroon : Country Code : CM Country : China : Country Code : CN Country : Colombia : Country Code : CO Country : Costa Rica : Country Code : CR Country : Cuba : Country Code : CU Country : Cape Verde : Country Code : CV Country : Curaçao : Country Code : CW Country : Christmas Island : Country Code : CX Country : Cyprus : Country Code : CY Country : Czech Republic : Country Code : CZ Country : Germany : Country Code : DE Country : Djibouti : Country Code : DJ Country : Denmark : Country Code : DK Country : Dominica : Country Code : DM Country : Dominican Republic : Country Code : DO Country : Algeria : Country Code : DZ Country : Ecuador : Country Code : EC Country : Estonia : Country Code : EE Country : Egypt : Country Code : EG Country : Western Sahara : Country Code : EH Country : Eritrea : Country Code : ER Country : Spain : Country Code : ES Country : Ethiopia : Country Code : ET Country : Finland : Country Code : FI Country : Fiji : Country Code : FJ Country : Falkland Islands : Country Code : FK Country : Micronesia : Country Code : FM Country : Faroe Islands : Country Code : FO Country : France : Country Code : FR Country : Gabon : Country Code : GA Country : United Kingdom : Country Code : GB Country : Grenada : Country Code : GD Country : Georgia : Country Code : GE Country : French Guiana : Country Code : GF Country : Guernsey : Country Code : GG Country : Ghana : Country Code : GH Country : Gibraltar : Country Code : GI Country : Greenland : Country Code : GL Country : Gambia : Country Code : GM Country : Guinea : Country Code : GN Country : Guadeloupe : Country Code : GP Country : Equatorial Guinea : Country Code : GQ Country : Greece : Country Code : GR Country : South Georgia And The South Sandwich Islands : Country Code : GS Country : Guatemala : Country Code : GT Country : Guam : Country Code : GU Country : Guinea-Bissau : Country Code : GW Country : Guyana : Country Code : GY Country : Hong Kong : Country Code : HK Country : Heard Island And McDonald Islands : Country Code : HM Country : Honduras : Country Code : HN Country : Croatia : Country Code : HR Country : Haiti : Country Code : HT Country : Hungary : Country Code : HU Country : Indonesia : Country Code : ID Country : Ireland : Country Code : IE Country : Israel : Country Code : IL Country : Isle Of Man : Country Code : IM Country : India : Country Code : IN Country : British Indian Ocean Territory : Country Code : IO Country : Iraq : Country Code : IQ Country : Iran : Country Code : IR Country : Iceland : Country Code : IS Country : Italy : Country Code : IT Country : Jersey : Country Code : JE Country : Jamaica : Country Code : JM Country : Jordan : Country Code : JO Country : Japan : Country Code : JP Country : Kenya : Country Code : KE Country : Kyrgyzstan : Country Code : KG Country : Cambodia : Country Code : KH Country : Kiribati : Country Code : KI Country : Comoros : Country Code : KM Country : Saint Kitts And Nevis : Country Code : KN Country : North Korea : Country Code : KP Country : South Korea : Country Code : KR Country : Kuwait : Country Code : KW Country : Cayman Islands : Country Code : KY Country : Kazakhstan : Country Code : KZ Country : Laos : Country Code : LA Country : Lebanon : Country Code : LB Country : Saint Lucia : Country Code : LC Country : Liechtenstein : Country Code : LI Country : Sri Lanka : Country Code : LK Country : Liberia : Country Code : LR Country : Lesotho : Country Code : LS Country : Lithuania : Country Code : LT Country : Luxembourg : Country Code : LU Country : Latvia : Country Code : LV Country : Libya : Country Code : LY Country : Morocco : Country Code : MA Country : Monaco : Country Code : MC Country : Moldova : Country Code : MD Country : Montenegro : Country Code : ME Country : Saint Martin : Country Code : MF Country : Madagascar : Country Code : MG Country : Marshall Islands : Country Code : MH Country : Macedonia : Country Code : MK Country : Mali : Country Code : ML Country : Myanmar : Country Code : MM Country : Mongolia : Country Code : MN Country : Macao : Country Code : MO Country : Northern Mariana Islands : Country Code : MP Country : Martinique : Country Code : MQ Country : Mauritania : Country Code : MR Country : Montserrat : Country Code : MS Country : Malta : Country Code : MT Country : Mauritius : Country Code : MU Country : Maldives : Country Code : MV Country : Malawi : Country Code : MW Country : Mexico : Country Code : MX Country : Malaysia : Country Code : MY Country : Mozambique : Country Code : MZ Country : Namibia : Country Code : NA Country : New Caledonia : Country Code : NC Country : Niger : Country Code : NE Country : Norfolk Island : Country Code : NF Country : Nigeria : Country Code : NG Country : Nicaragua : Country Code : NI Country : Netherlands : Country Code : NL Country : Norway : Country Code : NO Country : Nepal : Country Code : NP Country : Nauru : Country Code : NR Country : Niue : Country Code : NU Country : New Zealand : Country Code : NZ Country : Oman : Country Code : OM Country : Panama : Country Code : PA Country : Peru : Country Code : PE Country : French Polynesia : Country Code : PF Country : Papua New Guinea : Country Code : PG Country : Philippines : Country Code : PH Country : Pakistan : Country Code : PK Country : Poland : Country Code : PL Country : Saint Pierre And Miquelon : Country Code : PM Country : Pitcairn : Country Code : PN Country : Puerto Rico : Country Code : PR Country : Palestine : Country Code : PS Country : Portugal : Country Code : PT Country : Palau : Country Code : PW Country : Paraguay : Country Code : PY Country : Qatar : Country Code : QA Country : Reunion : Country Code : RE Country : Romania : Country Code : RO Country : Serbia : Country Code : RS Country : Russia : Country Code : RU Country : Rwanda : Country Code : RW Country : Saudi Arabia : Country Code : SA Country : Solomon Islands : Country Code : SB Country : Seychelles : Country Code : SC Country : Sudan : Country Code : SD Country : Sweden : Country Code : SE Country : Singapore : Country Code : SG Country : Saint Helena : Country Code : SH Country : Slovenia : Country Code : SI Country : Svalbard And Jan Mayen : Country Code : SJ Country : Slovakia : Country Code : SK Country : Sierra Leone : Country Code : SL Country : San Marino : Country Code : SM Country : Senegal : Country Code : SN Country : Somalia : Country Code : SO Country : Suriname : Country Code : SR Country : Sao Tome And Principe : Country Code : ST Country : El Salvador : Country Code : SV Country : Sint Maarten (Dutch part) : Country Code : SX Country : Syria : Country Code : SY Country : Swaziland : Country Code : SZ Country : Turks And Caicos Islands : Country Code : TC Country : Chad : Country Code : TD Country : French Southern Territories : Country Code : TF Country : Togo : Country Code : TG Country : Thailand : Country Code : TH Country : Tajikistan : Country Code : TJ Country : Tokelau : Country Code : TK Country : Timor-Leste : Country Code : TL Country : Turkmenistan : Country Code : TM Country : Tunisia : Country Code : TN Country : Tonga : Country Code : TO Country : Turkey : Country Code : TR Country : Trinidad and Tobago : Country Code : TT Country : Tuvalu : Country Code : TV Country : Taiwan : Country Code : TW Country : Tanzania : Country Code : TZ Country : Ukraine : Country Code : UA Country : Uganda : Country Code : UG Country : United States Minor Outlying Islands : Country Code : UM Country : United States : Country Code : US Country : Uruguay : Country Code : UY Country : Uzbekistan : Country Code : UZ Country : Vatican : Country Code : VA Country : Saint Vincent And The Grenadines : Country Code : VC Country : Venezuela : Country Code : VE Country : British Virgin Islands : Country Code : VG Country : U.S. Virgin Islands : Country Code : VI Country : Vietnam : Country Code : VN Country : Vanuatu : Country Code : VU Country : Wallis And Futuna : Country Code : WF Country : Samoa : Country Code : WS Country : Yemen : Country Code : YE Country : Mayotte : Country Code : YT Country : South Africa : Country Code : ZA Country : Zambia : Country Code : ZM Country : Zimbabwe : Country Code : ZW
標準出力ではなく結果をリストに保存したい場合には、最後のpackage foo; import java.util.Arrays; import java.util.Locale; /** * @author bruno borges */ public class Foo { public static void main(String[] args) { final String formatOutput = "Country : %s \t\t\t\t:\t Country Code : %s"; List<String> list = Arrays.asList(Locale.getISOCountries()) .stream() .map(c -> new Locale("", c)) .sorted((c0, c1) -> c0.getDisplayCountry().compareTo(c1.getDisplayCountry())) .map(l -> String.format(formatOutput, l.getDisplayCountry(), l.getCountry())) .collect(Collectors.toList()); list.forEach(System.out::println); } }
forEachを
collect(Collectors.toList());に変更して、変数に割り当てましょう。