Je veux faire quelque chose comme çaparamètres multiples dans la liste
List<Integer, String, String>
Je veux être en mesure de récupérer itérativement ou l'autre de ces trois paramètres. Comment puis-je m'y prendre? Merci
Je veux faire quelque chose comme çaparamètres multiples dans la liste
List<Integer, String, String>
Je veux être en mesure de récupérer itérativement ou l'autre de ces trois paramètres. Comment puis-je m'y prendre? Merci
Qu'est-ce que vous avez besoin est une classe Tuple:
public class Tuple<E, F, G> {
public E First;
public F Second;
public G Third;
}
Ensuite, vous pouvez parcourir la liste des tuple et regarder chaque entrée dans le tuple.
List<Tuple<Integer, String, String> listOfTuple;
for (Tuple<Integer, String, String> tpl: listOfTuple){
// process each tuple
tpl.First ... etc
}
Vous pouvez créer une classe wrapper qui contient ces trois variables, puis stocker cet objet wrapper dans la liste.
Par exemple
public class ListWrapperClass {
private String firstStringValue;
private String secondStringValue;
private Integer integerValue;
public String getFirstStringValue() {
return firstStringValue;
}
public void setFirstStringValue(String firstStringValue) {
this.firstStringValue = firstStringValue;
}
public String getSecondStringValue() {
return secondStringValue;
}
public void setSecondStringValue(String secondStringValue) {
this.secondStringValue = secondStringValue;
}
public Integer getIntegerValue() {
return integerValue;
}
public void setIntegerValue(Integer integerValue) {
this.integerValue = integerValue;
}
}
puis utilisez List<ListWrapperClass>
.
Idéalement, bien sûr, cette classe aurait des noms significatifs pour elle-même et ses propriétés. – ColinD
Oui, c'est vrai. Mais ce n'était malheureusement pas spécifié dans la question :) – Yrlec
Pourquoi avez-vous les getters et les setters? Cela ajoute beaucoup trop de code inutile. – jjnguy
Vous pouvez utiliser un List<Object>
puis lancer tout ce que vous extrayez en fonction de l'index, mais vous pouvez simplement envisager de créer une classe contenant ces trois éléments.
Je ne recommande pas cette solution non générique. – jjnguy
Moi non plus! :) Présentant juste d'autres alternatives. –
Cela ne semble pas être le bon choix car les 3 valeurs ne peuvent pas toutes partager le même index et ne sont donc pas liées les unes aux autres comme elles devraient l'être. De plus, le manque de sécurité de type avec «Liste
http://stackoverflow.com/questions/3725703/how-to-store-more-than-one-string-in-a-map/3725732#3725732 liés – Bozho
Pourquoi voulez-vous faire ? Généralement quand je vois ceci c'est un problème de conception (parlant de mes propres erreurs aussi bien que d'autres :-) – TofuBeer