您的位置:首页 > 编程语言 > Java开发

Java基础:循环迭代Array/List/Set/Map集合 增强for循环

2016-05-24 01:20 836 查看
 Java基础:循环迭代Array/List/Set/Map集合 增强for循环 
@Test
public void testArrayAddFor(){
System.out.println("startArray[]===============");
String [] addFor = {"杜胖","昌路","小波","传智","中国软件编程","Java基础"};
System.out.println("normalfor");
for(int i=0;i<addFor.length;i++){
System.out.print(addFor[i]);
if(i==addFor.length){
System.out.print(addFor[i]);
System.out.println();
}
}
System.out.println("strongfor");
for(String value : addFor){
System.out.print(value);
}
System.out.println("finishedArray[]===============");
}

@Test
public void testSet(){
Set<Integer> set = new HashSet<Integer>();
set.add(100);
set.add(500);
set.add(1000);

Iterator<Integer> it = set.iterator();
while(it.hasNext()){
Integer key = it.next();
System.out.print(key+"\t");
}
}

@Test
public void testList1(){
List<String> list = new ArrayList<String>();
list.add("文正");
list.add("小波");
list.add("昌路");
System.out.println("list前长度"+list.size());
ListIterator<String> it = list.listIterator();
while(it.hasNext()){
String key = it.next();
System.out.print(key + "\t");
it.add("微信学习");
}
System.out.println("\n list后长度"+list.size());
it = list.listIterator();
while(it.hasNext()){
String key = it.next();
System.out.print(key+"\t");
}
}

@Test
public void testList2(){
List<String> list = new ArrayList<String>();
list.add("文正");
list.add("小波");
list.add("昌路");
for(String name : list){
System.out.print(name+"\t");
}
}
@Test
public void testMap1(){
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1000, "昌路");
map.put(100, "文正");
map.put(500, "小波");

Set<Integer> set = map.keySet();
Iterator<Integer> it = set.iterator();
while(it.hasNext()){
Integer key = it.next();
String value = map.get(key);
System.out.println(key+"-"+value);
}
}
@Test
public void testMap2(){
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1000, "昌路");
map.put(100, "文正");
map.put(500, "小波");

Set<Entry<Integer,String>> set = map.entrySet();
Iterator<Entry<Integer,String>> it = set.iterator();
while(it.hasNext()){
Entry<Integer,String> entry = it.next();
Integer key = entry.getKey();
String value = entry.getValue();
System.out.println(key+"<->"+value);
}

}
@Test
public void testMap3(){
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1000, "昌路");
map.put(100, "文正");
map.put(500, "小波");
// 第一种:通过Map.keySet()遍历key和value  

        // 这里有一个二次取值的过程,所以并不推荐  
for(Integer key : map.keySet()){
System.out.println("key = " + key + " and value = " + map.get(key));  
}

// 第二种:通过Map.entrySet()使用iterator()遍历key和value  
Iterator<Map.Entry<Integer, String>> iterator = map.entrySet().iterator();
while(iterator.hasNext()){
Map.Entry<Integer, String> entry =
4000
iterator.next();
System.out.println("key = " + entry.getKey() + " and value = " + entry.getValue());  

}

// 第三种:通过Map.entrySet()遍历key和value  

        // JDK1.5后的遍历形式,代码看起来比较整洁,更推荐采用  
for(Map.Entry<Integer, String> entry : map.entrySet()){
System.out.println("key = " + entry.getKey() + " and value = " + entry.getValue());  
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息