2017-07-27 77 views
-1

所以我發現類似這個問題,但沒有幫助我解決問題。所以我有一個ArrayList < ArrayList < String>>。這基本上創建了一個用戶輸入表,所以你可以添加列,每列可以有不同的數量。我需要遍歷可以創建的組合,而無需比較同一列中的對象。理想情況下,我可以通過一個嵌套for循環發送它,並使用if語句來訪問每個元素以根據需要進行分離,但由於它是動態大小,因此我無法找到一種方法來做到這一點,同一列也是如此。預先感謝您的幫助。Dynamic For Loop

+2

我發現很難遵循這個問題。你能提供一個你的數據的例子和你想得到的結果嗎? – Mureinik

回答

0

如果我正確理解你的問題,聽起來你有一個列表清單,其中第一個清單有點像一個關鍵,其中每個清單是你需要的數據清單。我遇到了一個非常類似的問題,並且我能夠使用Map來保存這些值。如果訂單很重要,那麼您將需要使用TreeMap

我提到地圖,因爲你提到你想要操縱(聽起來像表中的行),而不是列。如果使用TreeMap,則鍵保持相同的順序,每個鍵的值將與表中的行相同。然後,每個列表中的索引將成爲列。

沒有一個可靠的數據示例,我無法真正瞭解如何比較「組合」,在這種情況下,我認爲這些組合可以由列表中的列表處理。

+0

對於遲到的回覆,我通過手機問了問題,現在我在筆記本電腦上,這樣我可以更好地闡述。因此,該列表完全基於用戶輸入,因此如果您說類別是ABCD,並且您有5個A的2個B的3個C和1個D,那麼它將構建A1 A2 A3 A4 A5的列,B1 B2之一, C1 C2 C3和D1中的一個。然後我想比較它們,但不是針對每列中的那些,所以如果我想要3的組合,那麼它將是A1 B1 C1,A2 B1 C1等,如果我想要4,那麼它將是A1 B1 C1 D1,A1 B1 C2 D1等。這是否更有意義? – DanZaMan

+0

我正在嘗試構建可幫助進行視覺化的列,但我不知道如何去做。 – DanZaMan

+0

贊[this](https://ibb.co/nvzec5)? 對不起,無法弄清楚如何嵌入它! 如果是這樣,我相信一張地圖將是完美的。您可以將鍵設置爲A,B,C,D,然後每個「1,2,3」等都是該鍵的值。這樣,您可以創建一個遍歷每個鍵/值對的循環,從列表中獲取一個值,並將其添加到輸出列表中。然後,如果你想自己處理值,你可以分割輸出列表。這個解釋是否有意義? – ZombieShellback