Map集合的遍历和Collection集合的遍历的简单应用
- Collection集合是以单值形式储存元素的。它主要有两种遍历方式。第一种是通过iterator( )方法获取一个迭代器,迭代遍历元素。第二种方法是通过Collection集合实现类中的get( )方法并结合循环遍历元素。
方法一:
package com.pyi.blog;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
/**
* @author DELL
* @ClassName CollectionTest
* @date 2022/5/11
* version 1.0
*/
public class CollectionTest {
public static void main(String[] args) {
Collection list=new ArrayList();
list.add('A');
list.add('B');
list.add('C');
list.add('D');
list.add('E');
list.add('F');
Iterator itr=list.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
}
运行结果如下:
在方法一种首先通过调用iterator( )方法获取了一个迭代器,然后通过迭代器中的hasNext( )方法以及next( )方法遍历该集合。
方法二:
package com.pyi.blog;
import com.sun.deploy.util.JVMParameters;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
/**
* @author DELL
* @ClassName CollectionTest
* @date 2022/5/11
* version 1.0
*/
public class CollectionTest {
public static void main(String[] args) {
Collection list=new ArrayList();
list.add('A');
list.add('B');
list.add('C');
list.add('D');
list.add('E');
list.add('F');
ArrayList a=(ArrayList) list;
for(int i = 0; i<a.size(); i++){
System.out.println(a.get(i));
}
}
}
运行结果如下:
- Map集合是以键值对的形式储存元素的,它有主要两种遍历方式,一种是通过调用Map集合的相关实现类中的keySet( )方法将该Map集合中所有的key取出,然后再用迭代器或循环遍历key并用Map集合中实现类的get( )方法取出对应的value。第二种方式为调用Map集合中的实现类的entrySet( )方法,将一个Map集合转化为一个Set集合,然后再通过迭代器或循环遍历。
方法一:
import java.util.Set;
/**
* @author DELL
* @ClassName MapTest
* @date 2022/5/11
* version 1.0
*/
public class MapTest {
public static void main(String[] args) {
Map map=new HashMap<>();
map.put(1,"小明");
map.put(2,"小花");
map.put(3,"小红");
map.put(4,"小芳");
map.put(5,"小方");
Set set=map.keySet();
Iterator itr= set.iterator();
while(itr.hasNext()){
Object i=itr.next();
System.out.println("key = "+i+",value = "+map.get(i));
}
}
}
运行结果如下:
在方法一中,首先获取了该集合中所有的键组成的Set集合,然后通过迭代器,遍历Set集合中的key,再结合get()方法遍历了Map集合中的所有值。
方法二:
package com.pyi.blog;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
/**
* @author DELL
* @ClassName MapTest
* @date 2022/5/11
* version 1.0
*/
public class MapTest {
public static void main(String[] args) {
Map map=new HashMap<>();
map.put(1,"小明");
map.put(2,"小花");
map.put(3,"小红");
map.put(4,"小芳");
map.put(5,"小方");
Set<Map.Entry> set= map.entrySet();
for(Map.Entry i:set){
System.out.println(i);
}
}
}
运行结果如下:
在方法二中,首先通过entrySet方法,将一个Map集合转化成了一个Set集合,在这个Set集合中,每一个元素都是Map.Entry类的。再通过foreach加强循环遍历该集合。