je le code suivant qui me obtenir une liste de tous les noms de pays: DJava Mapping plage d'ID à chaînes dans la liste
private List<String> countriesList = new ArrayList<String>();
public List<String> getCountriesList() {
String[] locales = Locale.getISOCountries();
for (String countryCode : locales) {
Locale obj = new Locale("", countryCode);
countriesList.add(obj.getDisplayCountry(Locale.ENGLISH));
}
Collections.sort(countriesList);
countriesList.add(0, "International");
System.out.println(countriesList);
return countriesList;
}
Ce que je dois faire est la carte maintenant tous ces pays à un Numéro d'identification
Le numéro d'identification commencera à: 32.000.006 et se terminent à 32.000.260
Je ne sais pas ce que je dois faire pour obtenir les chiffres mis en correspondance .. Je sais que, fondamentalement, je vais passer un entier par une méthode et cette méthode va correspondre à l'ID qui est transmis à la méthode, puis j'en ai besoin pour retourner le nom du pays.
Je ne suis pas sûr de la façon de s'y prendre mais un problème que j'ai remarqué est que l'ID 32000008 appartient au pays: Åland Islands mais comme il a un A étrange il est à la fin de ma liste. J'ai toujours besoin d'avoir l'ID 32000008 cependant.
Si quelqu'un a une idée de ce que je dois faire pour ma méthode pour terminer ceci, je serai reconnaissant.
Merci de
MISE À JOUR J'essayé d'utiliser un HashMap et a ce code:
public class test{
public static void main (String[] args) throws java.lang.Exception
{
getCountriesList();
}
private static HashMap<Integer,String> countriesList = new HashMap<Integer,String>();
public static void getCountriesList() {
String[] locales = Locale.getISOCountries();
for (String countryCode : locales) {
int i = 32000007;
Locale obj = new Locale("", countryCode);
countriesList.put(i,obj.getDisplayCountry(Locale.ENGLISH));
i++;
}
countriesList.put(32000006,"International");
System.out.println(countriesList);
}
}
qui sort: {32000006 = International, 32.000.007 = Zimbabwe}
Tous idées pourquoi cela ne fonctionne pas?
Vous connaissez les HashMaps en Java? –
@MB_CE non pas vraiment –
Ainsi, HashMap fait également partie de Java Collection et il vous permet d'ajouter des données avec une clé, quelque chose comme 'hashMap.put (clé, valeur)' et de la même façon vous obtenez des données par clé. Ainsi, vous pouvez utiliser l'ID comme clé pendant le stockage des données du pays dans la HashMap et plus tard l'obtenir par ID. Jetez un oeil à eux http://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html –