java List循环与Map循环的总结
java List循环与Map循环的总结
做了一下list和map的总结,没有什么技术含量,就全当复习了一下api。
测试环境是在junit4下,如果没有自己写一个main方法也是一样的。
首先是List的三种循环:
@Test
publicvoidForListTest(){
List<String>list=newArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
//迭代器循环不需要知道集合的大小以及类型,最佳选择
for(@SuppressWarnings("rawtypes")
Iteratoriterator=list.iterator();iterator.hasNext();){
Stringlist=(String)iterator.next();
System.out.println("01)Iteratorfor:==============="+list);
}
//foreach相对比for来讲,不需要知道集合的长度
for(Stringlist:list){
System.out.println("02)foreach:================="+list);
}
//for循环既需要知道集合的大小,而且要求是有序的
for(inti=0;i<list.size();i++){
System.out.println("03)for=================="+list.get(i));
}
}
然后是Map的四种循环:
@Test
publicvoidForMapTest(){
Map<String,String>map=newHashMap<String,String>();
map.put("01","1");
map.put("02","2");
map.put("03","3");
map.put("04","4");
map.put("05","5");
Set<String>keySet=map.keySet();
//1.keyset的foreach方法
for(Stringkey:keySet){
System.out.println("1)keyset:"+"key:"+key+"value:"
+map.get(key));
}
Set<Entry<String,String>>entrySet=map.entrySet();
//2.entryset的迭代方法
for(@SuppressWarnings("rawtypes")
Iteratoriterator=entrySet.iterator();iterator.hasNext();){
@SuppressWarnings("unchecked")
Entry<String,String>entry=(Entry<String,String>)iterator
.next();
System.out.println("02)entrySet,iterator:key:"+entry.getKey()
+"value:"+entry.getValue());
}
//3.推荐,容量最大
for(Entry<String,String>entry:entrySet){
System.out.println("03)entrySet,foreach:key:"+entry.getKey()
+"value:"+entry.getValue());
}
Collection<String>values=map.values();
//4.只循环出value的方法
for(Stringvalue:values){
System.out.println("04)values,justforvalues,value:"+value);
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!