List
List:和数组类似,List可以动态增长,查找元素效率高,插入删除元素效率低,因为会引起其他元素位置改变。
普通['1','2']
1.循环
2.System.out.println(list);
int数组['1,2,3','4,5,6','1,2,3']
1.for (int[] array : list) { System.out.println(Arrays.toString(array)); }
2. System.out.println(Arrays.deepToString(list.toArray()));
Set
set无序,下标取得是乱的,不能用i。Set:检索元素效率低下,删除和插入效率高,插入和删除不会引起元素位置改变。
for (Object object : set) {
System.out.println(object);
}
迭代器
Iterator<Object> it = set.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
Map
存储的是键值对,键不能重复,值可以重复。对 map 集合遍历时先得到键的 set 集合,对 set 集合进行遍历,得到相应的值
方法一
1 使用Map集合中的方法KeySet(),把Map集合所有的Key 取出来 ,存储到一个Set集合中
2 遍历Set集合,获取Map集合中的每一个Key值
3 通过Map集合的get(Key),通过Key找到value
public static void fun1(HashMap<Integer,String> map){//keySet() 返回此映射中所包含的键的 Set 视图。 获取key的set集合Set<Integer> set= map.keySet();Iterator iterator=set.iterator();while (iterator.hasNext()){Object key=iterator.next();System.out.print(key);System.out.print(map.get(key));}}
方法二:
entrySet() 返回此映射所包含的映射关系的 Set 视图。
1 使用Map集合中的方法entrySet(),把Map集合多个Entry对象取出来,,存储到一个Set集合中
2 遍历Set集合,获取每个Entry对象
3 使用Entry对象的中的方法getKey()和getValue() 获取键键与值
public static void fun2(HashMap<Integer,String> map){Set<Map.Entry<Integer,String>> set=map.entrySet();Iterator<Map.Entry<Integer,String>> it=set.iterator();while (it.hasNext()){Map.Entry<Integer,String> entry=it.next();Integer key=entry.getKey();String value=entry.getValue();System.out.println("Key"+key+" value"+value);}}