【发布时间】:2014-12-09 17:07:33
【问题描述】:
我对@987654322@ 有疑问。 假设我们有以下代码:
public class HashMaps {
public static void main(String[] ar){
List<String> list = new ArrayList<>();
Map<Integer, List<String>> myMap = new HashMap<>();
list.add("one");
list.add("two");
list.add("three");
list.add("four");
List cloneList = ((List) ((ArrayList) list).clone());
myMap.put(0, cloneList);
list.clear();
list.add("un");
list.add("deux");
list.add("trois");
list.add("quatre");
cloneList = ((List) ((ArrayList) list).clone());
myMap.put(1, cloneList);
System.out.println("map : "+myMap);
System.out.println("keys : "+myMap.keySet());
System.out.println("values : "+myMap.values());
}
}
我怎样才能进入myMap 的新List<String> 所有值(Lists)?
基本上,我有如下列表:
["one"]
["two"]
["three"]
["four"]
又想得到:
["one","two","three","four"]
【问题讨论】:
-
你的意思是,打印它们每行一个值,而不是标准
toString()列表方法的格式?下面没有实际的格式,toString()方法决定像这样打印它们。您可以随意打印它们 -
这段代码中有某种“克隆人的攻击”:)
-
不要使用原始类型。
-
@VassilisDe 看看我的回答,你是这个意思吗?
标签: java list dictionary data-structures