@Override
public Vertex next() {
Queue<Vertex> nV = new LinkedList<Vertex>(graph.getNeighbours(this.sV));
System.out.println(nV.getFirst());
return nV.getFirst();
}
Above I eine Warteschlange nV
angeben, die eine Warteschlange von einer verketteten Liste instanziiert wird. Ein LinkedList-Typ sollte die Methode getFirst()
haben, warum wird dieses Programm es nicht zulassen? Ich bin in Ordnung mit sogar eine pop
, da es eine Warteschlange ist, wenn dies möglich ist, aber nicht sicher, ob das auch funktioniert.Verfahren getFirst() ist nicht definiert für den Typ Queue <Vertex>
ERROR at solution.java (at line 42)
return nV.getFirst();
^^^^^^^^
The method getFirst() is undefined for the type Queue<Vertex>
Aber Sie haben einen Verweis auf eine 'Queue', keine 'LinkedList'. Ändern Sie "nV" in "LinkedList", wenn Sie Methoden verwenden möchten, die für "LinkedList" spezifisch sind. –
Sehen Sie hier ein 'getFirst' https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html? – Tunaki
@Tunaki Bitte lesen Sie meine Frage und versuchen, meine Verwirrung zu verstehen, ich weiß, eine Warteschlange hat keine verdammte getFirst-Methode, ich bin in Verwirrung mit den Typen, wie ich es als Linkedlist instanziieren, so dachte, es sollte Zugriff auf diesen Typ haben. Ich schätze, ich werde den ersten Kommentar Vorschlag versuchen – Pim