publicclass VerifyLocale implements Doclet { // These static values are shared between the main method and the // Doclet instance indirectly created from the main method. static String language; static String country; static String variant;
var languages = new HashSet<>(); var countries = new HashSet<>(); var variants = new HashSet<>();
for (Locale loc : Locale.getAvailableLocales()) {
language = loc.getLanguage();
country = loc.getCountry();
variant = loc.getVariant();
// skip locales for which the round-trip fails (e.g. no_NO_NY : nn_NO) if (!loc.equals(Locale.forLanguageTag(loc.toLanguageTag()))) {
System.err.println("skipped " + loc
+ " (language tag round trip: "
+ loc.toLanguageTag()
+ ": " + Locale.forLanguageTag(loc.toLanguageTag()) + ")");
System.err.println();
skipCount++; continue;
}
// to reduce the potentially large number of locales to be tested, skip // those for which we have already seen any of the language, country or variant. if (!languages.add(language)
& !countries.add(country)
& !variants.add(variant)) {
System.err.println("skipped " + loc + " (duplicate part)");
System.err.println();
skipCount++; continue;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.