import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
/*
* list遍历元数
*/
public class ListTest {
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("张三");
list.add("李四");
list.add("王五");
list.add("赵六");
//方法一.for循环迭代
System.out.println("----- for循环迭代 -----");
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
//方法二.迭代器遍历
System.out.println("----- 迭代器遍历 -----");
for(Iterator<String> iter=list.iterator();iter.hasNext();){
System.out.println(iter.next());
}
//方法三.增强for循环
System.out.println("----- 增强for循环 -----");
for(String s:list){
System.out.println(s);
}
//方法四.Iterator集合遍历
System.out.println("----- Iterator集合遍历 -----");
Iterator<String> it = list.iterator();
while(it.hasNext()){
String s = it.next();
System.out.println(s);
}
//方法五.多元素举例
System.out.println("----- Iterator集合遍历 -----");
Map<String,Integer> map =new HashMap<String,Integer>();
map.put("q", 1);
map.put("r", 4);
map.put("w", 2);
map.put("e", 3);
List<Map.Entry<String,Integer >> list1=new ArrayList<Map.Entry<String,Integer >>(map.entrySet());
map.entrySet();
Collections.sort(list1, new Comparator<Map.Entry<String, Integer>>(){
@Override
public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
return o1.getValue()-o2.getValue();
}
} );
for(Map.Entry<String, Integer> e:list1 ){
System.out.println(e.getValue()+"----"+e.getKey());
}
}
}