Eine Anfängerfrage (Neulingsbeitrag, bitte weisen Sie darauf hin, wenn es Unregelmäßigkeiten gibt, danke):
Was bedeutet <K> in der Instanzmethode „private static <K> void methodName() {}“
? Ist die Rückgabe hier nicht ungültig? Warum gibt es <K>?
Quelle der Frage: Data Structures and Algorithms in Java™ Sixth Edition Michael T. Goodrich...Seite:537(array-based merge-sort)
Code:
public static <K> void merge(K[] S1, K[] S2, K[] S, Comparator<K> comp) {
int i = 0, j = 0;
while(i + j < S.length) {
if (j == S2.length || (i<S1.length && comp.compare(S1[i], S2[j]<0))
S[i+j] = S[i++];
else
S[i+j]=S2[j++];
}
}
Vielen Dank für eure Antworten, ich habe eine sehr ausführliche Einführung gefunden: http://blog.csdn.net/jungle_h...
这是一个泛型类型参数,用于指出后面方法声明中用到的"K"并不是一个确实存在的类。
java
中的泛型,代表的是类型参数这是
java
中的静态泛型方法