-2

LinkedHashMapsが2つあります

Map m1 = new LinkedHashMap();
m1.put("1","One");
m1.put("3","Three");
Map m2 = new LinkedHashMap();
m2.put("2","Two");
m2.put("4","Four");

Linked HashMapの両方からキーを検索し、代わりにリストに保存します。

リストには1、2、3、4が含まれている必要があります。

4

3 に答える 3

2

本当に宿題のように聞こえるので、正確なコードは提供しません。インターリーブしないので、これまでの答えは間違っていると思います。これを試して:

最初のマップのIteratoriterator1を取得します。2番目のマップのIteratoriterator2を取得します。

whileループを使用して、iterator1とiterator2の次の要素を要求します。残りはあなたが理解するためのものです。

于 2012-04-07T11:41:54.983 に答える
0

次のように、リストを作成して、マップから両方のキーセットを追加できます。

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;


public class Main {

    public static void main(String[] args) {
        Map m1 = new LinkedHashMap();
        m1.put("1","One");
        m1.put("3","Three");
        Map m2 = new LinkedHashMap();
        m2.put("2","Two");
        m2.put("4","Four");
        List<String> list = new ArrayList<String>();
        list.addAll(m1.keySet());
        list.addAll(m2.keySet());
        for(String s : list) {
            System.out.println(s);
        }
    }

}
于 2012-04-07T11:28:05.077 に答える
0

これが解決策です:

        List list = new ArrayList();
        list.addAll(m1.keySet());
        list.addAll(m2.keySet());
        Collections.sort(list);
于 2012-04-07T11:23:55.463 に答える