各种集合的遍历方式

List

//第一种:增强for循环
    List<String> list = new ArrayList<String>();
    list.add("天麻");
    list.add("地星");
    list.add("小茴香");
    for(String temp:list) {
        System.out.println(temp);
    }
    //第二种:for循环
    for(int i=0;i<list.size();i++) {
        System.out.println(list.get(i));
    }
    //第三种:迭代器
    Iterator<String> iterator = list.iterator();
    while(iterator.hasNext()) {
        String lis = iterator.next();
        System.out.println(lis);
    }

ArrayLIst

ArrayList<String> arrayList = new ArrayList<>();
    arrayList.add("苹果");
    arrayList.add("香蕉");
    arrayList.add("西瓜");
    arrayList.add("葡萄");
    //for循环
    for(int i=0; i < arrayList.size();i++) {
        System.out.println(arrayList.get(i));
    }
    //增强for循环
    for (String string : arrayList) {
        System.out.println(string);
    }
    //使用Iterator迭代器
    Iterator<String> it = arrayList.iterator();
    while(it.hasNext()) {
        String a = it.next();//如果要删除集合中的元素,使用这种
        it.remove();
        System.out.println(a);
    }
    //第二种iterator
    for(Iterator it2=arrayList.iterator();it2.hasNext();) {
        System.out.println(it2.next());
    }

hashmap

 /**第一种遍历方式
     * 1.调用map集合中的方法keySet,所有的键存储到Set集合中
     * 2,遍历Set集合,获取出Set集合中的所有元素(map中的键)
     * 3.调用map集合方法get,通过键获取值
     */
 Set<String> keySet = maps.keySet();
 Iterator<String> it = keySet.iterator();
 while(it.hasNext()) {
     String next = it.next();
     String s = maps.get(next);
     System.out.println(s);
 }
    /**
     * 第二种遍历
     * A:Map集合遍历方式entrySet方法
 *
  *  Map集合获取方式
  *  entrySet方法,键值对映射关系(结婚证)获取
  *  实现步骤:
  *    1. 调用map集合方法entrySet()将集合中的映射关系对象,存储到Set集合Set<Entry <K,V> >
  *    2. 迭代Set集合
  *    3. 获取出的Set集合的元素,是映射关系对象
  *    4. 通过映射关系对象方法 getKet, getValue获取键值对
  *    
  *    创建内部类对象 外部类.内部类 = new 
  */
 Set<Entry<String, String>> entrySet = maps.entrySet();
 Iterator<Entry<String, String>> it = entrySet.iterator();
 while(it.hasNext()) {
     Entry<String, String> n = it.next();
     System.out.println(n.getKey()+"---"+n.getValue());
     
 }
//第三种方式增强for循环
 for (Map.Entry<String, String> entrys : maps.entrySet()) {
    System.out.println(entrys.getKey()+"--->"+entrys.getValue());
}
//第四种方式:lambda表达式
 maps.forEach((key,value)->{
    System.out.println(key+"---->"+value); 
 });
//第五种方式:使用streamAPI遍历
 maps.entrySet().stream().forEach((entry)->{
    System.out.println(entry.getKey()+"--->"+entry.getValue()); 
 });
 

set

    HashSet<String> set = new HashSet<>();
        set.add("花生");
        set.add("绿豆");
        set.add("核桃");
        set.add("薏米");
        //第一种:增强for循环
        for(String temp:set) {
            System.out.println(temp);
        }
        //第二种:使用迭代器
        for(Iterator it=set.iterator();it.hasNext();) {
            System.out.println(it.next());
        }

 

posted @ 2020-04-03 23:06  天边月  阅读(530)  评论(0编辑  收藏  举报