4 回答
TA贡献1780条经验 获得超3个赞
List是接口,它存放的数据是有序,会确保以一定的顺序保存元素,使用是使用它的实例类,如ArrayList,LinkedList;如List<String> list=new ArrayList<>();
ArrayList是List的一个实例类,使用ArrayList可以顺序存放数据;
如:List<String> list=new ArrayList<>(); list.add("test");
获取数据:
for(int i=0;i<list.size();i++){
String str=list.get(i);
}
Map 是集合,是按键值对(key-value)存放数据, 使用时,使用Map的使用类HashMap<>,如Map<String,String> map=new HashMap<String,String>(); map.put("id","100000001");map.put("name","张三");
获取数据:
1、直接遍历
for (String key : map.keySet()) {
System.out.println("key= " + key + " and value= " +map.get(key));
}
2、
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println("key= " + entry.getKey() + " and value= "
+ entry.getValue());
}
TA贡献1828条经验 获得超6个赞
你首先要了解什么是Map,可以理解为Map是一堆key和value的映射集合(或者说一堆键值对的集合)。
12345678 | List list = new ArrayList(); Map map = new HashMap(); list.add( "a" ); list.add( "c" ); list.add( "b" ); for ( int i = 0 ;i<list.size();i++){ map.put(i, list.get(i)); } |
然后你要用Map里的东西,可以使用map.get(1)这种形式获取,他和list.get(1); 相等都为“c”。
另外建议初始化Map和List的时候,定义好所存的数据类型。
List<String> list = new ArrayList<String>();
Map<Integer, String> map = new HashMap<Integer, String>();
添加回答
举报