java中List、Set、Map集合的遍历方法总结
一.List集合遍历
package resources.com.zhang.集合;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/**
* @author created by Zhangdazhuang
* @version v.0.1
* @date 2018/10/13
* @备注 测试
**/
public class 遍历List {
/**定义一个List集合*/
public List<String> getList(){
List<String> list = new ArrayList<String>();
list.add("Zhudazhuang");
list.add("Jack Ma");
list.add("Kobe");
list.add("Andy Lau");
return list;
}
/**遍历list集合*/
public void traversingList(List<String> list){
int i=0;
//方法一:通过下标遍历
for (i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
//方法二:Iterator迭代器遍历
Iterator<String> itr = list.iterator();
while(itr.hasNext()){
String str = itr.next();
System.out.println(str);
}
//方法三:foreach
i=0;
for (String s : list) {
/*if (s.equals("hello")) {
System.out.println("找到了hello了,该退出了");
break;
}*/
System.out.print("第" + (++i) + "个元素" + s + ";");
}
System.out.println("");
}
public static void main(String[] args) {
遍历List test = new 遍历List();
List<String> list = test.getList();//获得List集合
test.traversingList(list);//遍历List集合并输出
}
}
二.Set集合
package resources.com.zhang.集合;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
/**
* @author created by Zhangdazhuang
* @version v.0.1
* @date 2018/10/13
* @备注 测试
**/
public class 遍历Set {
/**
* 定义一个Set集合
*/
public Set<String> getSet() {
Set<String> set = new HashSet<String>();
set.add("ZhuXun");
set.add("Jack Ma");
set.add("Kobe");
set.add("Andy Lau");
return set;
}
/**
* 遍历Set集合
*/
public void traversingSet(Set<String> set) {
//方法一:Iterator迭代器遍历
Iterator<String> itr = set.iterator();
while (itr.hasNext()) {
String str = itr.next();
System.out.println(str);
}
//方法二:通过增强型for循环遍历
//注:Set集合中不存在下标,因此无法通过下标遍历,对于Java编译器而言,方法一和方法二是等价的
for (String str : set) {
System.out.println(str);
}
}
public static void main(String[] args) {
遍历Set test = new 遍历Set();
Set<String> set = test.getSet();//获得Set集合
test.traversingSet(set);//遍历Set集合并输出
}
}
三.Map集合遍历
package resources.com.zhang.集合;
import java.util.HashMap;
import java.util.Map;
/**
* @author created by Zhangdazhuang
* @version v.0.1
* @date 2018/10/13
* @备注 测试
**/
public class 遍历Map {
/**
* 定义一个Map集合
*/
public Map<String, String> getMap() {
Map<String, String> map = new HashMap<String, String>();
map.put("ZhuXun", "are very handsome");
map.put("Kobe", "are very storng");
map.put("Jack Ma", "are very clever and rich");
map.put("Andy Lau", "are very man and charismatic");
return map;
}
/**
* 遍历Map集合
*/
public void traversingMap(Map<String, String> map) {
//方法一:通过Entry遍历<迭代Entry>
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println(entry.getKey() + ":" + entry.getValue());
}
//方法二:通过Set集合遍历<迭代Set>
for (String key : map.keySet()) {
System.out.println(key + ":" + map.get(key));
}
}
public static void main(String[] args) {
遍历Map test = new 遍历Map();
Map<String, String> map = test.getMap();//获得map集合
test.traversingMap(map);//遍历map集合并输出
}
}