Ich habe eine Klasse wie folgt definiert:Generics nicht finden können, Symbol
static class ParallelMergeSort<T extends Comparable<Pair>> extends RecursiveAction
Wo Pair
eine Klasse getSecond()
oben mit einem Verfahren definiert.
private boolean isLess(T a, T b) {
if (a instanceof Pair<?,?>) return a.getSecond().compareTo(b.getSecond()) < 0;
return a.compareTo(b) < 0;
}
obwohl ich, dass T
von Pair
eine Instanz wird bin Überprüfung Auch der Compiler noch mit dem Fehler kommt cannot find symbol
:
In der Mergesort Klasse habe ich ein Verfahren, wie definiert
return a.getSecond().compareTo(b.getSecond()) < 0;
^
Was sollte ich ändern, um dieses Problem zu beheben?
@ downvoters Verstand, einen Kommentar zu hinterlassen, was mit der Frage falsch ist? Ich bin nur neugierig –
Zeigt der Caret wirklich auf 'getSecond' von' b'? – mkl
@mkl nein Entschuldigung mein Schlechter, es fügte einen zusätzlichen Raum hinzu, als ich es in –