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)); }
- 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);
}
}