Iterieren über ArrayList

lidija_25

Mitglied
Hallo,

ich bin eine Java-Einsteigerin und neu im Forum :) Ich bin hänge gerade an der Einheit Iterator/Iterable. Vielleicht kann mir ja jemand weiterhelfen, da ich befürchte ein ziemliches Verständnisproblem zu haben. Ich habe zwei Klassen (Sammlung und SammlungUI)

Java:
import java.util.ArrayList;
import java.util.Iterator;

public class Sammlung 
{
   
    Object element;
    public ArrayList sammlungen=new ArrayList();
 
  
 public Sammlung(String name, int alter)
 {
     this.sammlungen.add(name);
     this.sammlungen.add(alter);
     
 }
    
 public Object nextSammlung()
   {
       Iterator itr=sammlungen.iterator();
       while(itr.hasNext())
       {
          element=itr.next();
          
       }
        return element;
   }

 
}

import java.util.*;

public class SammlungUI
{
   public static void main(String args[])
   {
       String einelement;
       Sammlung einesammlung=new Sammlung("Erste",23);
       Sammlung zweitesammlung=new Sammlung("Zweite",45);
       Sammlung drittesammlung=new Sammlung("Dritte",57);
       
       //System.out.println(einesammlung.nextSammlung());
     [COLOR=#ff0000]  for(Object o:einesammlung)  [/COLOR]
       {
           einelement=(String)o;
           System.out.println("Element" +  einelement); 
       }
       
   }
   
   
   
}

Das Problem, das ich habe ist, wenn ich über ein ArrayList objekt (einesammlung) iterieren will, bekomme ich jedes Mal die Meldung "for-each not applicable to expression type required:array or java.lang.iterable; found:Sammlung".

Mir ist nicht klar, warum es hier nicht möglich ist über das Sammlungs-Objekt zu iterieren? Hat vielleicht jemand eine Idee? Ich wäre euch sehr dankbar!

LG,
Lidija
 

InfectedBytes

Top Contributor
Dein Objekt einesammlung ist ja auch keine Arrayliste, sondern vom typ Sammlung.
Entweder muss du über die Arrayliste deiner Sammlung iterieren oder deine Klasse Sammlung muss iterable implementieren.
Java:
for(Object o : einesammlung.sammlungen) {
...
}
p.s. Sichtbarkeit public ist auch nicht ganz so ideal.

oder eben sowas:
Java:
public class Sammlung implements Iterable {
...
public Iterator iterator() {
  return sammlungen.iterator();
}
}

Die Arrayliste (und auch iterable/iterator) sind allesamt generisch, daher solltest du den generischen Typparameter auch mit angeben:
Java:
ArrayList<TypXYZ> sammlungen = new ArrayList<TypXYZ>();
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Iterieren über eine CSV Datei Java Basics - Anfänger-Themen 7
H in for Schleife über Vector iterieren Java Basics - Anfänger-Themen 2
G mit for each über Map iterieren :bahnhof: Java Basics - Anfänger-Themen 3
B Iterieren über eine Liste Java Basics - Anfänger-Themen 2
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
S Durch HashMap iterieren Java Basics - Anfänger-Themen 8
P Iterieren mit einer Foreach in Lambdaschreibweise und Counter. Java Basics - Anfänger-Themen 1
L Iterieren durch eine ArrayList. Integer Array wird übergeben Java Basics - Anfänger-Themen 17
S Mit einer LinkedList vorwärts und rückwärts iterieren Java Basics - Anfänger-Themen 6
T OOP Zwei Klassen Testen (Arrary Iterieren) Java Basics - Anfänger-Themen 6
feinperligekohlensaeure Arraylisten-Namen iterieren.. wie ? Java Basics - Anfänger-Themen 39
B OOP Über einen AVL-Baum iterieren (NullPointer) Java Basics - Anfänger-Themen 5
B OOP Über eine doppelt verkettete Liste iterieren Java Basics - Anfänger-Themen 4
N Durch Objekte iterieren? Java Basics - Anfänger-Themen 3
AssELAss Über ein Objekt vom Typ BigDecimal iterieren Java Basics - Anfänger-Themen 6
A Über Jahr iterieren, Freitag der 13. Java Basics - Anfänger-Themen 2
K Durch alle Attribute eines Objektes iterieren Java Basics - Anfänger-Themen 6
A Array iterieren Java Basics - Anfänger-Themen 20
K For Each Schleife wieder von Beginn an iterieren Java Basics - Anfänger-Themen 12
V Hashmap Iterieren Java Basics - Anfänger-Themen 4
G Erste Schritte Über verschiedene Datentypen iterieren. Gibt es sowas? Java Basics - Anfänger-Themen 19
P Variablen ArrayList mit Bedingung iterieren Java Basics - Anfänger-Themen 2
B Hashset iterieren problem Java Basics - Anfänger-Themen 3
K Datentypen Über Collection iterieren bringt fehler Java Basics - Anfänger-Themen 8
S OOP Durch ein Enum iterieren... Java Basics - Anfänger-Themen 47
P Über HashMap iterieren -> NullPointerException Java Basics - Anfänger-Themen 2
J Collection ArrayList und mit erweitertem for iterieren Java Basics - Anfänger-Themen 7
A Struts: Über Collection iterieren mir Taglibs? Java Basics - Anfänger-Themen 13
G Durch Liste iterieren und nachkommastellen runden Java Basics - Anfänger-Themen 9
D HashMap iterieren Java Basics - Anfänger-Themen 7
richis-fragen GlassPane über JScrollPane legen Java Basics - Anfänger-Themen 6
A Server - Client Nachrichtenaustausch über Eventbus Java Basics - Anfänger-Themen 12
P Neue Java v8 JRE Version nicht über alte drüber installierbar: Wie sonst? Java Basics - Anfänger-Themen 7
D Downloadfortschritt von Datei über Google Drive API v3 Java Basics - Anfänger-Themen 10
B großzügiges Pixelraster über Bildschirm legen Java Basics - Anfänger-Themen 7
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
L Beim Java Programmstart, mehrere Parameter über die Kommandozeile übergeben Java Basics - Anfänger-Themen 9
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
H Eine Methode über Actionlistener beenden Java Basics - Anfänger-Themen 8
S Java über SSH Java Basics - Anfänger-Themen 13
X Wie erreiche ich, dass ein Robot weitere Attribute hat, die nicht materialisiert sind, sondern nur über get/ set-Methoden simuliert sind? Java Basics - Anfänger-Themen 1
M Wie können Klassen nicht-materialisierte Attribute haben, die nur über get/ set-Mehoden simuliert sind? Java Basics - Anfänger-Themen 6
D Best Practice Ausgabe über direkte Ausgabe oder try-catch? Java Basics - Anfänger-Themen 13
R Eigenschaft über Parameter auslesen und ändern Java Basics - Anfänger-Themen 15
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
W Unterschiede bei Zugriff auf Objekt und Klassenvariablen über einen Getter? Java Basics - Anfänger-Themen 2
W char über die Konsole? Java Basics - Anfänger-Themen 7
EchtKeineAhnungManchmal Hallo :) ich bekomme es nicht hin eine Fehlermeldung auszugeben über die GUI Java Basics - Anfänger-Themen 3
S Array über ein Ausgabemethode in main ausgeben Java Basics - Anfänger-Themen 31
C Potenzberechnung über switch case. Taschenrechner mit Eingabe über einen grafischen Dialog Java Basics - Anfänger-Themen 22
J Wert zurückgeben über get Methode Java Basics - Anfänger-Themen 8
J Eintrag Combobox über einen String auswählen Java Basics - Anfänger-Themen 3
A Array Ansprache einer Zelle über Punktnotation? Java Basics - Anfänger-Themen 3
O Java über cmd benutzen ? Java Basics - Anfänger-Themen 5
J Variablenzugriff über string Java Basics - Anfänger-Themen 18
W Objekte über Scanner Input; ToString Probleme... Java Basics - Anfänger-Themen 4
H Methode über String Wert aufrufen Java Basics - Anfänger-Themen 8
M Java Kompilieren über Package grenzen hinaus Java Basics - Anfänger-Themen 4
M Arrays mit mehreren Werten über JOptionPane initialisieren Java Basics - Anfänger-Themen 12
Tino1993 Ellipse über draw Funktion ohne spur wandern lassen Java Basics - Anfänger-Themen 6
M Mehrere Datenbank zugriffe über tomee.xml regeln? Java Basics - Anfänger-Themen 1
N Input/Output Eine Frage über system.out.println. Java Basics - Anfänger-Themen 10
J Array über Getter erlangen Java Basics - Anfänger-Themen 34
S While-Schleife geht in Endlosschleife über, warum? Java Basics - Anfänger-Themen 6
B OOP-Anfänge über CMD + Editor Java Basics - Anfänger-Themen 30
G Variablen Array Länge über den Konstruktor definieren Java Basics - Anfänger-Themen 4
L Addition von Arrays über die Parameterliste Java Basics - Anfänger-Themen 11
C Datei über relative Pfade einlesen Java Basics - Anfänger-Themen 6
1 Erste Schritte Was denkt ihr über eines meiner ersten Javaprogramme? Java Basics - Anfänger-Themen 2
S Allgemeine Frage über Generics und Vererbungen Java Basics - Anfänger-Themen 5
J Button über Pfeiltasten bewegen Java Basics - Anfänger-Themen 8
E Objekt durch Benutzer über Konsole erzeugen - Java Java Basics - Anfänger-Themen 3
N Eingabe Kommazahlen über Scanner Java Basics - Anfänger-Themen 2
T DoWhile Schleife über mehrere Mothoden Java Basics - Anfänger-Themen 5
C Collections List über Interface zugreifen Java Basics - Anfänger-Themen 32
J Gefilterten Stream über die Konsole ausgeben Java Basics - Anfänger-Themen 1
S Variablen Klassenvariable über Objekt aufrufen Java Basics - Anfänger-Themen 16
S Bilder über Socket Senden Java Basics - Anfänger-Themen 1
K Textdatei auslesen und über Mqtt schicken Java Basics - Anfänger-Themen 4
I GUI über Eclipse oder NetBeans Java Basics - Anfänger-Themen 23
S Klassenaufruf über JFrame Button Java Basics - Anfänger-Themen 3
Java The Hutt SetWerte über verschiedene Klassen Java Basics - Anfänger-Themen 16
L Zugriff auf Attribute eins Objekts über ActionListener Java Basics - Anfänger-Themen 4
O Methode über Leerzeichen Java Basics - Anfänger-Themen 13
I OOP Objektnamen über die Konsole richtig einlesen Java Basics - Anfänger-Themen 9
A Variablen Variablenwert über Konstruktor ändern Java Basics - Anfänger-Themen 3
J MySQL Datumsabfrage über ResultSet in Java-Servlet Java Basics - Anfänger-Themen 4
CptK Interface Bilder über Bildschirm bewegen, bis der Abstand zum vorherigen zu groß wird Java Basics - Anfänger-Themen 13
dapzoo Class File Version zu niedrig? Ausführen über Eingabeaufforderung nicht möglich Java Basics - Anfänger-Themen 14
J Punkt auf,über,unter oder zwischen 2 Geraden Java Basics - Anfänger-Themen 14
CptK Interface Bild über Methode ändern funktioniert nicht Java Basics - Anfänger-Themen 4
R Keine Verbindung zu MySql über Netbeans Java Basics - Anfänger-Themen 15
E Best Practice Jar-file mit zwei Klassen und externer Bibliothek über Konsole erzeugen Java Basics - Anfänger-Themen 13
J Aufruf einer Methode über einen String Java Basics - Anfänger-Themen 11
G Arraynamen über eine Schleife ansprechen Java Basics - Anfänger-Themen 4
S Bild über JButton legen Java Basics - Anfänger-Themen 3
temi Druckeransteuerung über ESC-Sequenz Java Basics - Anfänger-Themen 21
M Methodenaufruf über SQL UPDATE Java Basics - Anfänger-Themen 8
B Könnte jemand über dieses jurze Javaprogramm schauen? Irgendwas funktioniert mit der z-Varible nicht Java Basics - Anfänger-Themen 2
M Java Programm über Batch-Datei ausführen Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben