Was ist eine generische Methode? (also eine Methode, in der lokal ein generischer Datentyp existiert)

Eine generische Methode ist eine Methode, bei der mindestens ein Parameter generisch ist. Generisch bedeutet in diesem Zusammenhang, dass sich der Typ des Parameters aus dem übergebenen Typ beim Methodenaufruf ergibt.

Zur Syntax: Die Platzhalter für die verwendeten Typen sind in im Kopf der Methode vor der Deklaration des Rückgabeparameters anzugeben.

Im Codebeispiel wird eine Methode implementiert, die die Elemente eines Arrays in eine Liste kopiert. Die Liste und das Array sind mit dem generischen Typ T gestempelt. Das heißt: Wird beim Methodenaufruf eine Liste vom Typ Integer übergeben (List<Integer>) nimmt T den Typ Integer an. Analog List<Double>, List<Person>, … .

public class GenericTest {

	static <T> void copyArrayToList(List<T> list, T[] a) {
		for (T elem : a) {
			list.add(elem);
		}
	}
	
	public static void main(String[] args) {
		Integer a[] = { 1, 2, 3, 4 };
		List<Integer> list = new ArrayList<>();
		
		copyArrayToList(list, a);
		
		System.out.println(list);
	}
}