Type mismatch: cannot convert from Graph.Edge to ArrayList<Graph.Edge>

BC_KO3

Mitglied
Java:
        ArrayList<Edge> allEdges = new ArrayList<>();

        public ArrayList<Edge> getEdge (int i) {
            return allEdges[i];
        }

Warum geht das nicht, was muss ich machen, damit es geht? Warum behauptet Java ArrayList sei keine ArrayList??
 
G

Gelöschtes Mitglied 65838

Gast
wie ich bereits bgeschrieben hatte
Java:
public Edge getEdge (int i) {
            return allEdges[i];
        }
 

temi

Top Contributor
Der Zugriff auf ein Element einer ArrayList über den Index, erfolgt mittels der Methode get().

https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html#get(int)

Der Zugriff über die eckige Klammer gilt für ein Array.

Und was den Rückgabewert angeht: Wenn du ein einzelnes Element aus der Liste zurückgeben möchtest, dann ist der Rückgabetyp auch vom Typ der enthaltenen Elemente (das was @Joreyk geschrieben hat). Willst du eine Liste von Elementen zurückgeben, dann ist es z. B. wie im ersten Beitrag oder mit Verwendung des Interfaces List<Edge>.
 

BC_KO3

Mitglied
Der Zugriff auf ein Element einer ArrayList über den Index, erfolgt mittels der Methode get().

https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html#get(int)

Der Zugriff über die eckige Klammer gilt für ein Array.

Und was den Rückgabewert angeht: Wenn du ein einzelnes Element aus der Liste zurückgeben möchtest, dann ist der Rückgabetyp auch vom Typ der enthaltenen Elemente (das was @Joreyk geschrieben hat). Willst du eine Liste von Elementen zurückgeben, dann ist es z. B. wie im ersten Beitrag oder mit Verwendung des Interfaces List<Edge>.
Nope:
"Type mismatch: cannot convert from Graph.Edge to ArrayList<Graph.Edge>Java(16777235)"

Java:
 public ArrayList<Edge> getEdge (int i) {
            return allEdges.get(i);
        }
 

temi

Top Contributor
Ach so, wie bekomme ich dann die Ecken in eine Liste rein, wenn ich getEdge aufrufe?
Du sprichst in Rätseln! Deine Methode holt ein Element aus der Liste heraus. Für "rein" gibt es z. B. add() (siehe Doku, Link ist oben).

Insofern kannst du das mit get() erhaltene Element mit add() einer anderen Liste hinzufügen, falls es das ist, was du möchtest.
 

BC_KO3

Mitglied
Ich würde gerne diese Methode aufrufen.
Java:
public int Gewicht (int start, int dest) {
            int weight = 0;
            ArrayList<Edge> edges = getEdge(s);
    
            for(Edge edge : edges){
                if(edge.destination == dest){
                    weight = edge.weight;
                    break;
                }
            }
            return weight;
        }
 

temi

Top Contributor
Das muss (start) heißen.
Ok. Es soll eine Methode getEdges() geben, die mehrere Edges aus einer Liste liefern soll und genau einen Integer-Parameter hat. Welche Edges sollen mit diesem Parameter aus der Liste von Edges zurück gegeben werden ? Alle vom Anfang bis zu dieser Position, alle von dieser Position bis zum Ende? Was ganz anderes?
 

temi

Top Contributor
Hier mal ein Beispiel, welches jedes n-te Element aus einer Liste als Ergebnisliste liefert.

Java:
public List<Edge> getEdges(final int n) {
    ArrayList<Edge> result = new ArrayList<>();
    for (int i = 0; i < allEdges.size(); i += n) {
        result.add(allEdges.get(i));
    }
    return result;
}
 

BC_KO3

Mitglied
Ok. Es soll eine Methode getEdges() geben, die mehrere Edges aus einer Liste liefern soll und genau einen Integer-Parameter hat.

Keine Ahnung. Glaube nicht. Ich will das Gewicht von einem Startpunkt bis zu einem Endpunbkt haben
 

BC_KO3

Mitglied
Ich will genau einen integer Wert da raus haben und zwar das Gewicht. Von Startpunkt zu Endepunkt. Jede Kante hat ein Gewicht. Ich will das Gewicht von genau einer Kante, die als Start und Endpunkt deffiniert ist
 

temi

Top Contributor
Ich will genau einen integer Wert da raus haben und zwar das Gewicht.
Dann geht durch alle Werte in der Liste, bis du das Element mit dem gewünschten Gewicht gefunden hast und gib das zurück. Wenn du an einem bestimmten Index beginnen willst dann fang halt mit diesem Element an. Wie du an den Inhalt an einem bestimmten Index kommst, das weißt du ja.

Alternativ nimm deine for-each-Schleife auf den Bereich, den du mit sublist() aus der Liste extrahieren kannst.

Hättest du einmal die Doku gelesen, wie mehrfach erwähnt, dann hättest du da auch selbst drauf kommen können.
 
Zuletzt bearbeitet:

Neumi5694

Top Contributor
Es stehen schon mehrere Beispiele hier, wie man alle Elemente durchgeht.
for-each hast du selbst schon genannt, Temi hat dir ein Beispiel mit einer for-to schleife gezeigt. Die musst du nur überarbeiten, bzw. mit 1 ansteuern.
Was sie dann intern mit jedem Element macht, musst du noch selbst programmieren.

Du kannst hier nicht erwarten, von irgend jemandem eine ansatzweise "richtige" Lösung zu hören, wenn du noch nicht mal weißt, was du willst und was "richtig" ist.
Formulier das Ganze doch mal als Arbeitsanweisung mit Worten aus (Schritt für Schritt).
Wenn das funktioniert, musst du es nur noch in Java übersetzen. Aber du musst schon ausdrücken können, was eigentlich gemacht werden soll.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Type mismatch: cannot convert from Object to float Allgemeine Java-Themen 3
M java: unexpected type Allgemeine Java-Themen 2
BinFox Type-Parameterverwirrung Allgemeine Java-Themen 7
K Wildcard und class type Allgemeine Java-Themen 9
bueseb84 required a bean of type that could not be found. Allgemeine Java-Themen 2
N Generic Type einer Generischen Klasse während der Laufzeit bekommen Allgemeine Java-Themen 2
E javax.mail sene Type ändern Allgemeine Java-Themen 2
T JNA: Invalid sizeof type 4 Allgemeine Java-Themen 0
P List<Type> Konvertieren in List<List<Type>> Allgemeine Java-Themen 3
Tarrew Generics - Type erasure Allgemeine Java-Themen 5
S Welcher Schleifen type für eine Berechnung Allgemeine Java-Themen 7
D Type herausfinden Allgemeine Java-Themen 15
V Wildcard aus Parameter in return type Allgemeine Java-Themen 2
P Default constructor cannot handle exception type Allgemeine Java-Themen 6
C Kompletter Pfad aus "input type=file" auslesen Allgemeine Java-Themen 3
I Library für High Performance Mime Type Erkennung Allgemeine Java-Themen 8
P Mime Type aus Stream lesen Allgemeine Java-Themen 5
J BufferedImage aus PNG Files haben keinen Type Allgemeine Java-Themen 4
G POI: Leere Zelle nimmt keinen Type an Allgemeine Java-Themen 8
S Type safety Warnings beim casten von Generics Allgemeine Java-Themen 6
M Type-Cast Allgemeine Java-Themen 3
B Warum return type Object ? Allgemeine Java-Themen 4
G Generics in Map. Type of value abhängig vom key Allgemeine Java-Themen 3
S Innerer Type einer generischen Collection herausfinden? Allgemeine Java-Themen 13
S Collection Type Allgemeine Java-Themen 8
zilti NetBeans 6.0: neuen File Type definieren Allgemeine Java-Themen 2
S anderer Mime Type bei xml-Datei Allgemeine Java-Themen 2
G Error: Hashtable Type safety: The method put(Object, Object) Allgemeine Java-Themen 6
A serial Version UID field of type long Allgemeine Java-Themen 5
G Enclosing Type Allgemeine Java-Themen 3
G [quote]the type HashMap is not generic; it cannot be paramet Allgemeine Java-Themen 4
C Generic Type ermitteln Allgemeine Java-Themen 3
padde479 The static method sleep(long) from the type Thread should. Allgemeine Java-Themen 2
H References to generic type Test.A<typ> should be param Allgemeine Java-Themen 5
byte Generic Type einer List zur Laufzeit rausfinden? Allgemeine Java-Themen 4
T Generics, Enumerations und Type-Casts Allgemeine Java-Themen 13
K The method clone() from the type Object is not visible. Allgemeine Java-Themen 9
C REG_BINARY Type in Windows Registry ausgeben ? Allgemeine Java-Themen 4
M Content-Type setzen und auslesen? Allgemeine Java-Themen 2
K Bound mismatch: The generic method sort(List<T>) of ty Allgemeine Java-Themen 4
Erwin82a Object cannot be converted to Custom Class in Lampda Expression Allgemeine Java-Themen 2
D Selenium - cannot find Chrome binary Allgemeine Java-Themen 6
bueseb84 Java : Cannot find Symbol Allgemeine Java-Themen 7
Kirby.exe Cannot make a static reference to the non-static field rimWidth Allgemeine Java-Themen 12
S class path resource [config.properties}] cannot be opened because it does not exist Allgemeine Java-Themen 4
A Variablen non-static variable cannot be referenced from a static content Allgemeine Java-Themen 4
C Compiler-Fehler Cannot find symbol bei Hat-Beziehungen Allgemeine Java-Themen 5
Tarrew RMI Java RMI - com.sun.proxy.$Proxy1 cannot be cast to Funktionen Allgemeine Java-Themen 0
A Eclipse - Fehler beim "RUN" - "Unable to Launch - The selection cannot be launched" Allgemeine Java-Themen 6
R Char cannot be derefenrenced? Allgemeine Java-Themen 14
M Cannot create a generic array of T Allgemeine Java-Themen 5
W Threads Cannot make a static reference.. Allgemeine Java-Themen 13
127.0.0.1 Methodenaufruf -cannot find symbol- Allgemeine Java-Themen 14
S Cannot make a static reference to the non-static field MySecondClass.Points Allgemeine Java-Themen 3
B Cannot find main-claas... Allgemeine Java-Themen 21
M cannot be cast to java.lang.Comparable Allgemeine Java-Themen 5
K + cannot be applied Allgemeine Java-Themen 15
Tobse Cannot find symbol : construktor --- Deklariert! Allgemeine Java-Themen 9
D 'InputStreamReader' & 'BufferedReader' führen zu "cannot find symbol"-Fehler Allgemeine Java-Themen 3
X Cannot refer to a non-final variable settings inside an inner class defined in a different method Allgemeine Java-Themen 4
B cannot find Symbol Allgemeine Java-Themen 2
K java.io.IOException: Cannot validate certificate for jogl.dll Allgemeine Java-Themen 6
Saxony assert cannot be resolved Allgemeine Java-Themen 5
? Cannot run program + Vista Allgemeine Java-Themen 8
X cannot convert from Object[] to Integer[] Allgemeine Java-Themen 2
B aus java heraus kompillierte Klassen - cannot be resolved Allgemeine Java-Themen 3
R cannot be referenced! Allgemeine Java-Themen 18
R Cannot be referenced. Allgemeine Java-Themen 7
G Kompiler Fehler: cannot resolve symbol: class Allgemeine Java-Themen 4
7 Cannot resolve Symbol keyPressed Allgemeine Java-Themen 3
conan2 "Cannot make a static reference to the non-static field Allgemeine Java-Themen 8
A Fehlermeldung: cannot be resolved Allgemeine Java-Themen 5
G warum operator || cannot be applied to int, double Allgemeine Java-Themen 11
D Probleme mit 'cannot execute runjava.bat' Allgemeine Java-Themen 2
G Fehlermeldung "cannot resolve symbol" Allgemeine Java-Themen 7
V Cannot resolve symbol Allgemeine Java-Themen 7

Ähnliche Java Themen

Neue Themen


Oben