Звучит так, как будто enums
может быть полезным, например,
enum Language {
Swedish(Country.Sweden),
English(Country.England, Country.USA),
German(Country.Germany);
private Country[] countries;
Language(Country... countries) {
this.countries = countries;
}
public Country[] getCountries() {
return this.countries;
}
}
enum Country {
Sweden,
Germany,
England,
USA;
}
, который может быть использован как:
Language lang = Language.English;
lang.getCountries(); // England, USA
Следующее предложение будет позволить Country
взятьFlag
в качестве аргумента конструктора (так же, как Language
принимает Country
).Тогда вы можете использовать что-то вроде:
for(Country c : Language.English.getCountries()) {
System.out.println(c.getFlag());
}