Java – Get Country List

The Locale.getISOCountries() will return a list of all 2-letter country codes defined in ISO 3166

import java.util.Locale;

public class ListCountry {

    public static void main(String[] args) {
        ListCountry obj = new ListCountry();
        obj.run();
    }

    public void run() {
        String[] locales = Locale.getISOCountries();

        for (String countryCode : locales) {
            Locale obj = new Locale("", countryCode);
            System.out.println("Country Code = " + obj.getCountry()
			+ ", Country Name = " + obj.getDisplayCountry());
        }

        System.out.println("Done");
    }
}

Output:

Country Code = AD, Country Name = Andorra
Country Code = AE, Country Name = United Arab Emirates
Country Code = AF, Country Name = Afghanistan
Country Code = AG, Country Name = Antigua and Barbuda
Country Code = AI, Country Name = Anguilla
Country Code = AL, Country Name = Albania
//skip ……

Java – Get Currency Symbol

import java.util.Currency;
import java.util.Locale;

public class Main {
  public static void main(String[] args) {
    Currency currency = Currency.getInstance(Locale.JAPAN);
    System.out.println("Currency.getSymbol() = " + currency.getSymbol());

    currency = Currency.getInstance(Locale.UK);
    System.out.println("Currency.getSymbol() = " + currency.getSymbol());

    currency = Currency.getInstance(Locale.US);
    System.out.println("Currency.getSymbol() = " + currency.getSymbol());

    currency = Currency.getInstance(new Locale("in", "ID"));
    System.out.println("Currency.getSymbol() = " + currency.getSymbol());
  }
}

Java – Format Currency

import java.text.NumberFormat;

public class Main {
  public static void main(String[] argv) throws Exception {

    NumberFormat nf = NumberFormat.getCurrencyInstance();

    System.out.println("currency format: " + nf.format(1234.56) + " "
        + nf.format(-1234.56));
  }
}

//currency format: $1,234.56 -$1,234.56