Créez une classe avec une liste d'objets de nature arbitraire (n'importe quelle classe). La classe comprend une méthode appelée
PrintList
avec un paramètre booléen. La méthode affiche les éléments de liste impairs ou pairs sur la console, en fonction de la valeur du paramètre (vrai ou faux).
- Construire une classe générique
- Déclarer une ArrayList avec un type paramétrique (créer une liste)
- Créer une méthode qui remplit la liste avec des données
- Créer une méthode qui imprime des valeurs paires ou impaires
public class PrintList<T> {
private ArrayList<T> list = null;
public PrintList() {
list = new ArrayList<T>();
}
public void add(T data) {
list.add(data);
}
public void printList(boolean isOdd) {
int size = list.size();
if (isOdd) {
for (int i = 1; i < size; i += 2) {
System.out.println(list.get(i).toString());
}
} else{
for (int i = 0; i < size; i += 2) {
System.out.println(list.get(i).toString());
}}}
}
Je crée un objet de classe PrintList
, mais avec une classe concrète String
au lieu d'un type paramétrique. Je complète la liste. Il sera composé de 10 lignes. Et maintenant, si plS.printList(true)
, alors les lignes paires seront affichées. Et si plS.printList(false)
, alors bizarre.
public static void main(String[] args) {
PrintList<String> plS = new PrintList<String>();
for (int i = 0; i < 10; i++){
plS.add("" + i);
}
plS.printList(true);
Ensuite, je crée un objet de la classe PrintList
uniquement, à la place, String
il est utilisé Integer
et les valeurs impaires sont affichées.
PrintList<Integer> plI = new PrintList<Integer>();
for (int i = 0; i < 10; i++){
plI.add(i);
}
plI.printList(false);
}
GO TO FULL VERSION