Eine Liste von Listen erstellen

Diskutiere Eine Liste von Listen erstellen im Java Basics - Anfänger-Themen Forum; Vielen Dank Für die Antwort! Ich habe mir den Code angeschaut , aber leider kom ich an einem Punkt nicht weiter. Ich muss den Adressbüchern Namen...

  1. InDerNot
    InDerNot Neues Mitglied
    Code (Text):
    import java.util.*;

    public class MyClass {

        private static final Map<String, AddressBook> ADDRESS_BOOK_MAP = new HashMap<>(); // Erstellt eine konstante statische Map mit dem Key String und der Value AddressBook

        public static void main( String[] args ) {
            AddressBook addressBook1 = new AddressBook(); // Erstellt eine neue Instanz/neues Adressbuch
            addressBook1.getContactsList().add( "Kevin 01" ); // Fügt einen Kontakt hinzu
            addressBook1.getContactsList().add( "Thomas 02" ); // Fügt einen Kontakt hinzu

            AddressBook addressBook2 = new AddressBook();
            addressBook2.getContactsList().add( "Manuel 01" );
            addressBook2.getContactsList().add( "Max 02" );

            ADDRESS_BOOK_MAP.put( "Adressbuch-1", addressBook1 ); // Wir haben als Key einen String und ordnen die Zeichenkette einer Value zu, in dem Fall das Adressbuch.
            ADDRESS_BOOK_MAP.put( "Adressbuch-2", addressBook2 );


            for ( String entry : ADDRESS_BOOK_MAP.keySet() ) { // Eine For-Schleife, wo wir die Keys durchgehen
                System.out.println( entry ); // Alle keys ausgeben.
                /*
                Adressbuch-1
                Adressbuch-2
                 */
            }

            if ( ADDRESS_BOOK_MAP.containsKey( "Adressbuch-1" ) ) { // Überprüft, ob die Map den Key Adressbuch-1 enthält
                /*
                Hinweis, diese Abfrage sollte man durchaus machen, wenn man sich nicht sicher ist, ob das Adressbuch erstellt wird oder nicht.
                Sonst arbeitest du mit null und du kriegst eine NullPointerException.
                 */
                AddressBook addressBookFromMap = ADDRESS_BOOK_MAP.get( "Adressbuch-1" );
                /*
                Die Methode #get returnt die Value von dem Key. In dem Fall das Adressbuch.
                 */
                addressBookFromMap.readAllContacts();
             
                /*
                Ausgabe:
                Kevin 01
                Thomas 02
                 */
            }
        }

    }

    class AddressBook {

        private List<String> contactsList = new ArrayList<>(); // Eine Liste in einem Adressbuch, wo alle Kontakte gespeichert werde

        public List<String> getContactsList() { // Getter für die Kontakte
            return contactsList;
        }

        public void readAllContacts() { // Gibt alle Kontakte aus
            for ( int i = 0; i < contactsList.size(); i++ ) {
                System.out.println( contactsList.get( i ) );
            }
        }
    }
    Im Endeffekt ist es das, was @mihe7 vorgeschlagen hat. Ich fände es schöner, wenn er noch dazu eine Erklärung gepackt hätte, da man ja den Code auch verstehen sollte, aber ansonsten ist das richtig.

    Wenn du eine verkettete Liste machen musst, kannst du einfach aus der ArrayList eine LinkedList machen oder dies selbst gestalten.
    Eine ArrayList hat insbesondere den Vorteil, dass man schneller auf den Inhalt zugreifen kann, aber das Hinzufügen, sowie das Entfernen länger dauert.
    Bei der LinkedList andersrum. Das Hinzufügen und Entfernen ist schneller, dafür dauert der Zugriff etwas länger.
    Und warum das Abändern der ArrayList zu LinkedList einfach funktioniert, liegt daran, dass die Implementierungen der beiden aus demselben Interface (List) sind.
     
    joo und mihe7 gefällt das.
  2. joo
    joo Neues Mitglied
    Vieelen Dank für die Hilfe !!! Ich habe es endlich geschafft!!
     
    InDerNot gefällt das.
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Eine Liste von Listen erstellen - Ähnliche Themen

Erstellen einer Liste mit einer maximalen Menge an Elementen
Erstellen einer Liste mit einer maximalen Menge an Elementen im Forum Allgemeine Java-Themen
Lottoziehung mithilfe einer Liste
Lottoziehung mithilfe einer Liste im Forum Hausaufgaben
Über eine einfach verkettete Liste
Über eine einfach verkettete Liste im Forum Java Basics - Anfänger-Themen
Element einer Liste wurde hinzugefügt, aber es gibt keinen Zugriff
Element einer Liste wurde hinzugefügt, aber es gibt keinen Zugriff im Forum Allgemeine Java-Themen
Daten aus zwei Verschiedenen Tabellen in eine ArrayListe
Daten aus zwei Verschiedenen Tabellen in eine ArrayListe im Forum Java Basics - Anfänger-Themen
Thema: Eine Liste von Listen erstellen