我有一個3維ArrayList,我想確定它是否爲空。有一個例外EmptyCollectionException這是不是Java標準庫的一部分,因此我不允許使用它。如何確定集合是否爲空
有沒有辦法使用本地java異常或函數來完成該操作?
三維列表構造如下:
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);
}
}
}
當我經歷當然,章節和甲板創建爲每一個列表。只有一門課程,許多章節,許多套牌,當然還有許多卡片,如果他們通過了先決條件,它們將保存在甲板雙向鏈接列表下。如果沒有卡通過該條件,我有一個存在但沒有卡的3D列表。我想確定如果列表中沒有卡,則用戶收到錯誤消息。
其實我只需要卡片。但我也需要知道每張卡片現在駐留在哪個卡組裏。如果我只是列出一個清單並遍歷所有章節和套牌,並根據條件將卡片放入該清單,那麼我不知道每張卡片所在的章節和套牌。這可以通過向卡類添加兩個屬性來解決。但是,當我們設計系統時,這是一個錯誤,現在添加它們會在程序的其他部分花費很大的變化。課程中的每個索引列表表示章節編號,章節列表中的每個索引表示卡組編號。我以這種方式解決了這個問題。
你能顯示你的部分代碼嗎? –
是'arrayList.isEmpty()'不夠? – SMA
'isEmpty()'方法怎麼樣? –