JavaRush /Java-Blog /Random-DE /Generics in Java (Übung)

Generics in Java (Übung)

Veröffentlicht in der Gruppe Random-DE
Erstellen Sie eine Klasse mit einer Liste von Objekten beliebiger Art (jede Klasse). Die Klasse enthält eine Methode, die PrintListmit einem booleschen Parameter aufgerufen wird. Die Methode zeigt in der Konsole ungerade oder gerade Listenelemente an, abhängig vom Wert des Parameters (wahr oder falsch).
  1. Erstellen einer generischen Klasse
  2. Deklarieren Sie eine ArrayList mit einem parametrischen Typ (erstellen Sie eine Liste).
  3. Erstellen Sie eine Methode, die die Liste mit Daten füllt
  4. Erstellen Sie eine Methode, die entweder gerade oder ungerade Werte druckt
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());
	}}}

}
Ich erstelle ein Objekt der Klasse PrintList, jedoch mit einer konkreten Klasse Stringanstelle eines parametrischen Typs. Ich fülle die Liste aus. Es wird aus 10 Zeilen bestehen. Und wenn nun plS.printList(true), dann werden gerade Linien angezeigt. Und wenn plS.printList(false), dann seltsam.
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);
Dann erstelle ich ein Objekt der Klasse, PrintListstattdessen Stringwird es verwendet Integerund ungerade Werte ausgegeben.
PrintList<Integer> plI = new PrintList<Integer>();
	for (int i = 0; i < 10; i++){
		plI.add(i);
	}
	plI.printList(false);
}
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION