Objekte einer ArrayList richtig ausgeben?

Bitte aktiviere JavaScript!
Hey,
ich schreibe grad ein kleines Programm zu einem Sicherheitssystem, welches im Fall eines Feueralarms alle Türen öffnet. Habe bereits eine Arraylist vom Typ "Door" erstellt:

Java:
ArrayList<Door> liste = new ArrayList();
    liste.add(new Door(1, true));
    liste.add(new Door(2, false));
    liste.add(new Door(3, false));
    liste.add(new Door(4, true));
   
    activateFirealarm();
    for (int i = 0; i< liste.size(); i++) { 
        liste.get(i).setLocked(true);
       
    System.out.println(liste);
Er gibt mir so, jedoch nur den Speicherort der Objekte an( bsp.: [email protected]).
Meine Frage nun: Wie kann ich nun nur den boolean wert abfragen?

Wenn ich am Ende beim sysout eine Methode an die Liste anhängen will, bekomme ich eine Fehlermeldung:

Java:
System.out.println(liste.isStatus);
Fehlermeldung: "isStatus cannot be resolved or is not a field".
 
A

Anzeige




Vielleicht hilft dir unser Java-Tutorial hier weiter —> (hier klicken)
Du musst von jedem Element isStatus abfragen - also über alle Elemente in der Liste iterieren und isStatus abfragen.
 
Nicht?
Variablen- und Methoden-Bezeichner sollen mit Ausnahme von Klassenkonstanten mit kleinem Anfangsbuchstaben in CamelCase1-Schreibweise geschrieben werden
 
Naja, ich finde allerdings auch, dass der Bezeichner "isStatus" ziemlich doof ist, trotz der korrekten Schreibweise.

Was soll "Tür.istStatus" denn Sinnvolles ausdrücken?

Ich kann mir darunter nichts vorstellen...

Besser wäre möglicherweise "hasState", wobei immernoch die Frage im Raum stehen würde, was eine Tür mit dem Status "true" dann wohl ist.

Gut wäre wohl sowas wie "isOpen" oder "isClosed".
 
Danke für die Erklärung, temi. :) Dann brauchte ich das nicht erklären.

@xrakuzan1 , also, durch das Durchgehen aller Türen, kannst du alle noch nicht geöffneten Türen bei einem Feueralarm öffnen. Mit den "=="-Zeichen kannst du zwei nicht komplexe Variablen auf ihre Gleichheit überprüfen.
 
A

Anzeige




Du möchtest Python lernen? Dann sichere dir hier alle wichtigen Grundlagen.
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben