arraylist.get() liefert Speicheradresse?!?

Fishmsta

Mitglied
Hallo Leute,
ich habe ein kleines Problem mit Arraylisten.
Überall steht, dass ich mit arraylist.get() den Wert zurückgegeben bekommen.
Ich bekomme aber nur die Speicheradresse zurück.

Hier der Code:
Java:
//Arraylist erzeugen
ArrayList<String> values = new ArrayList<String>();

//Zeile aus datei lesen und als string in arraylist speichern
try {
            reader = new BufferedReader(new FileReader(jFileChooser1.getSelectedFile().getAbsolutePath()));
            String zeile;
            while ((zeile = reader.readLine()) != null) {
               System.out.println(zeile);
                values.add(zeile.split("\n").toString());
            }
        } catch (IOException e) {
            System.err.println("Datei konnte nicht eingelesen werden!");
        }

//eigentlich soll hier die arrayliste ausgegeben werden
for(int i = 0; i < values.size(); i++) {
            System.out.println(values.get(i));
        }

Ausgabe bei 6 Werten:
Code:
3.78
3.88
3.78
3.82
3.75
3.83
[Ljava.lang.String;@49708eee
[Ljava.lang.String;@7cb7d0ec
[Ljava.lang.String;@7f575ec
[Ljava.lang.String;@410dd09
[Ljava.lang.String;@6f1f7bf4
[Ljava.lang.String;@7c03092a

Das Einlesen scheint ja zu funktionieren und selbst wenn das speichen nicht funktionieren würde,
sollte die for-schleife doch die Werte und nicht die Adressen ausgeben, oder?
Was mache ich falsch?

Ich weiß im Moment echt nicht weiter.
Google hat bis jetzt auch imme nur o.g. geliefert.

Ich hoffe ihr könnt mir helfen.
THX!
 
Java:
zeile.split("\n")
gibt dir ein Array von Strings.
Darauf rufst du toString() auf.

Soweit ich weiß, erben die Arrays toString von Objekt und das gibt nunmal die Speicheradresse zurück.
Du müsstest über die Strings des Arrays iterieren und sie einzeln in die Liste einfügen oder die Arrays jeweils in Listen umwandeln und diese der eigentlichen Liste hinzufügen.
 

Zurück
Oben