2

我有以下列表:

List<ArrayList> list;

list.get(i)包含具有以下值的 ArrayList 对象{p_name=set1, number=777002}

我必须创建一个

Map<key,value> 

其中键包含 p_name,值是数字。

如何轻松快速地完成此操作,因为初始列表中可能有数百个条目,并且每个数字都可以出现在多个 p_name 条目中。

更新:这是我目前的解决方案

 List<Row> list; //here is my data

    Map<String,String> map = new TreeMap<String,String>();

    for (Row l : list) {
        if (l.hasValues()) {
            Map<String, String> values = l.getResult(); // internal method of Row interface that returns a map
            String key = values.get( "number");
            map.put(key,  values.get( "p_name" ));
        }  
    }

该方法有效,但也许可以做得更好?

PS:我的设计中有一个明显的错误。我想知道你是否找到它:)

4

1 回答 1

1

正弦键可以有多个值,您正在寻找的是 MultiMap。Multimap 或表单中的简单映射

  Map<Key,ArrayList<Values>>

对我来说,这里没有“快速”的方法。您仍然需要遍历所有元素并检查所有值。

而实际上数百到 Java 并没有多少

于 2013-04-15T07:37:45.163 回答