Java集合框架中Set、List、Map的遍历方法

集合框架

  • 所有集合类都位于java.util包下。集合中只能保存对象(保存对象的引用变量)。(数组既可以保存基本类型的数据也可以保存对象)。

  • 当我们把一个对象放入集合中后,系统会把所有集合元素都当成Object类的实例进行处理。从JDK1.5以后,这种状态得到了改进:可以使用泛型来限制集合里元素的类型,并让集合记住所有集合元素的类型(参见具体泛型的内容)。

  • 集合对象接口关系

  • 这里写图片描述

list遍历四种方法

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Test {

	public static void main(String[] args) {
		
		List list = new ArrayList();
		
		list.add(3);
		list.add(2);
		list.add(10);
		list.add(4);
		list.add(70);			 
		/*	 System.out.println("---方法一 -----");
			for(Iterator iterator = list.iterator();iterator.hasNext();){					
				int i = (Integer) iterator.next();					
				System.out.println(i);				
			}			 
      
		/* System.out.println("---方法二 -----");
		Iterator iterator = list.iterator();
		while(iterator.hasNext()){
			
			int i = (Integer) iterator.next();					
			System.out.println(i);	
		
		} 
		 System.out.println("---方法三 -----");
		for (Object object : list) {
			
			System.out.println(object);
			
		}*/
		System.out.println("---方法四 -----");
		for (int i = 0 ;i<list.size();i++) {
			
			int j= (Integer) list.get(i);					
			System.out.println(j);
			
		}
		
	}

}

Set、List、Map的遍历方法

  • 这里使用泛型对集合对象进行类型安全检查和遍历。
package com.shellway.javase;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
 
import org.junit.Test;
 
public class TestCollection {
   
  public static void print(Collection<? extends Object> c){
    Iterator<? extends Object> it = c.iterator();
    while (it.hasNext()) {
      Object object = (Object) it.next();
      System.out.println(object);
    }
  }
   
  @Test
  public void demo1(){
    Set<String> set = new HashSet<String>();
    set.add("AAA");
    set.add("BBB");
    set.add("CCC");
    print(set);
     
    //Set的第一种遍历方式:利用Iterator
    Iterator<String> it1 = set.iterator();
    for (String ss : set) {
      System.out.println(ss);
    }
    //Set的第一种遍历方式:利用foreach
    for (String sss : set) {
      System.out.println(sss);
    }
     
    List<String> list = new ArrayList<String>();
    list.add("DDDDD");
    list.add("EEEEE");
    list.add("FFFFF");
    print(list);
     
    //List的第一种遍历方式:因为list有顺序,利用size()和get()方法获取
    for (int i = 0; i < list.size(); i++) {
      System.out.println(list.get(i));
    }
    //List的第二种遍历方式:利用Iterator
    Iterator<String> it = list.iterator();
    while (it.hasNext()) {
      System.out.println(it.next());
    }
    //List的第三种遍历方式:利用foreach
    for (String s2 : list) {
      System.out.println(s2);
    }
     
    Map<String,String> map = new TreeMap<String, String>();
    map.put("Jerry", "10000");
    map.put("shellway", "20000");
    map.put("Kizi", "30000");
    print(map.entrySet());
    //Map的第一种遍历方式:先获得key,再获得值value
    Set<String> sett = map.keySet();
    for (String s : sett) {
      System.out.println(s+":"+map.get(s));
    }
    //Map的第二种遍历方式:获得键值对
    for (Map.Entry<String, String> entry : map.entrySet()) {
      System.out.println(entry.getKey()+" : "+entry.getValue());
    }
  }
}
发布了175 篇原创文章 · 获赞 76 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/qq_29232943/article/details/52792022