簡體   English   中英

如何通過交替添加對象將兩個列表連接在一起?

[英]How to join two lists together by alternately adding the objects?

如果我有兩個清單

List<Paper> papers;
List<Paper> papers2;

遍歷它們並創建新列表的最佳方法是什么,即訂單的順序是紙張中的一個Paper對象,然后紙張中的一個Paper對象,依此類推,直到列表結束?

編輯它們的大小不同,並根據輸入進行更改

謝謝

基本上,您將需要循環為

1)通過兩個列表一起去2)然后繼續通過循環papers 3)然后繼續通過循環papers2

 answer = new ArrayList ();
 int i = 0, k = 0;
 while (i < papers.size () &&  k < papers2.size ())
 {
     // add papers.get (i);
     // add papers2.get (k);
     i++;
     k++;
 }

 // this will not be entered if completely looped through papers
 while (i < papers.size ())
 {
     // add papers.get (i);
     i++;
 }

 // this will not be entered if completely looped through papers2
 while (k < papers2.size ())
 {
     // add papers2.get (i);
     k++;
 }

以下是在2個字符串列表l1和l2之間切換的代碼。 對於論文列表,您可以具有類似的邏輯。

    ArrayList<String> res = new ArrayList<String>();
        int i=0,j=0;

        while(i<l1.size() && j<l2.size()){
            res.add(l1.get(i++));
            res.add(l2.get(j++));
        }

        while(i<l1.size()){
            res.add(l1.get(i++));
        }
        while(j<l2.size()){
            res.add(l2.get(j++));
        }

        for (int j2 = 0; j2 < res.size(); j2++) {
            System.out.println(j2 +" : "+res.get(j2));
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM