-2

你有两个 LinkedHashMap

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

真的听起来像家庭作业,所以我不会给你确切的代码。我认为到目前为止的答案是错误的,因为它们没有交错。尝试这个:

获取第一个地图的 Iterator iterator1。获取第二个地图的 Iterator iterator2。

使用 while 循环并询问 iterator1 和 iterator2 中的下一个元素。剩下的就等你自己去想了。

于 2012-04-07T11:41:54.983 回答
0

这是解决方案:

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

您可以创建一个列表并从您的地图中添加两个 keySet,如下所示:

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 回答