Ich habe eine 3-dimensionale ArrayList und möchte feststellen, ob sie leer ist oder nicht. Es gibt eine Ausnahme namens EmptyCollectionException, die nicht Teil der Java-Standardbibliothek ist und daher nicht erlaubt ist.So ermitteln Sie, ob eine Sammlung leer ist
Gibt es eine Möglichkeit, das mit einer nativen Java-Ausnahme oder -Funktion zu erreichen?
Die 3D-Liste ist wie folgt aufgebaut:
public void makeRandomCardListForLearning (Course courseToBeMadeRandom) {
List<List<List<Card>>> course = new ArrayList<List<List<Card>>>();
for(Chapter chptr: courseToBeMadeRandom.getChapterList()) {
List<List<Card>> chapter = new ArrayList<List<Card>>();
course.add(chapter);
for(Deck dck: chptr.getDeckList()) {
List<Card> deck = new LinkedList<Card>();
chapter.add(deck);
for(Card crd: dck.getCardList()) {
if(dck.isTheCardDueToday(crd.getLastDate())) {
deck.add(crd);
}
}
Collections.shuffle(deck);
}
}
}
Wie gehe ich durch natürlich Kapitel und Deck ich eine Liste für jeden. Es gibt nur einen Platz, viele Kapitel, viele Decks und natürlich viele Karten, die unter Deck doublyLinkedList gespeichert werden, wenn sie die Voraussetzung erfüllen. Wenn keine Karte die Bedingung besteht, habe ich eine 3D-Liste, die existiert, aber keine Karten hat. Und ich möchte feststellen, dass, wenn keine Karte in der Liste vorhanden ist, der Benutzer eine Fehlermeldung erhält.
Tatsächlich brauche ich nur die Karten. Aber ich muss auch wissen, in welchem Deck sich gerade jede Karte befindet. Wenn ich nur eine Liste aufstelle und alle Kapitel und Decks durchführe und Karten in diese Liste aufnehme, habe ich keine Ahnung, in welchem Kapitel und in welchem Deck sich jede Karte befindet. Dies kann durch Hinzufügen von zwei Attributen zur Kartenklasse gelöst werden. Aber das war ein Fehler, als wir das System entwarfen und sie jetzt hinzufügen, kostet viel Veränderung in anderen Teilen des Programms. Jeder Index in der Kursliste repräsentiert die Kapitelnummer und jeder Index in der Kapitelliste repräsentiert die Decknummer. Ich habe das Problem auf diese Weise gelöst.
können Sie einen Teil Ihres Codes anzeigen? –
ist 'arrayList.isEmpty()' nicht ausreichend? – SMA
Wie ist 'isEmpty()' Methode? –