遍历 集合 数组 增强for Iterator

遍历数组


        String[] arr = { "包青天", "白乾涛", "baiqiantao", "bqt", "0909082401", };

        for (int i = 0; i < arr.length; i++) {//普通for

            System.out.println("第" + (i + 1) + "个元素为:" + arr[i]);

        }

        for (String i : arr) {//增强for

            System.out.println("元素为:" + i);

        }

遍历List、Set


       List<String> mList = new ArrayList<String>();

        mList.add("包青天a");

        mList.add("包青天c");

        mList.add("包青天b");

        System.out.println(mList); //[包青天a, 包青天c, 包青天b]

        for (String string : mList) {//增强for

            System.out.println("---" + string);

        }

        Iterator<String> it = mList.iterator();

        while (it.hasNext()) {//迭代器

            System.out.println(it.next());

        }

        //list特有的ListIterator,可以双向遍历         ListIterator<String> it2 = mList.listIterator();         while (it2.hasNext()) {//List迭代器             System.out.println("*******" + it2.next());//执行完后指针移到了最后,这有这样才能使用hasPrevious遍历         }         while (it2.hasPrevious()) {//List迭代器             System.out.println(it2.previous() + "*****");         }

遍历Map


      Map<Integer, String> map = new HashMap<Integer, String>();

        map.put(30, "zhagsan");

        map.put(17, "李四");

        map.put(2016, "包青天");

        System.out.println(map);//{17=李四, 2016=包青天, 30=zhagsan}

        for (Integer key : map.keySet()) {//增强for遍历key

            String value = map.get(key);

            System.out.println(key + "---" + value);

        }

        for (Map.Entry<Integer, String> k_v : map.entrySet()) {//增强for遍历键值对

            System.out.println(k_v);//17=李四

        }

        Iterator<Integer> iterator = map.keySet().iterator();         while (iterator.hasNext()) {//健的Set集合的迭代器             Integer key = iterator.next();             String value = map.get(key);             System.out.println(key + ":" + value);         }         Iterator<Map.Entry<Integer, String>> iterator2 = map.entrySet().iterator();         while (iterator2.hasNext()) {//键值对的迭代器             System.out.println(iterator2.next());//17=李四         }

List嵌套Map


      ArrayList<HashMap<String, String>> array = new ArrayList<HashMap<String, String>>();

        HashMap<String, String> hm1 = new HashMap<String, String>();

        hm1.put("周瑜", "小乔");

        hm1.put("吕布", "貂蝉");

        // 把元素添加到array里面

        array.add(hm1);

        HashMap<String, String> hm2 = new HashMap<String, String>();

        hm2.put("郭靖", "黄蓉");

        hm2.put("杨过", "小龙女");

        // 把元素添加到array里面

        array.add(hm2);

        // 遍历         for (HashMap<String, String> hm : array) {             Set<String> set = hm.keySet();             for (String key : set) {                 String value = hm.get(key);                 System.out.println(key + "-" + value);             }             System.out.println("//**************************");         }     }

Map嵌套Map


      HashMap<String, HashMap<String, Integer>> mMap = new HashMap<String, HashMap<String, Integer>>();

        HashMap<String, Integer> jcMap = new HashMap<String, Integer>();

        jcMap.put("陈玉楼", 20);

        jcMap.put("高跃", 22);

        mMap.put("基础班", jcMap);

        HashMap<String, Integer> jyMap = new HashMap<String, Integer>();

        jyMap.put("李杰", 21);

        jyMap.put("曹石磊", 23);

        mMap.put("就业班", jyMap);

        //遍历集合

        Set<String> mKeySet = mMap.keySet();

        for (String mKey : mKeySet) {

            System.out.println(mKey);

            HashMap<String, Integer> mValue = mMap.get(mKey);

            Set<String> mValueKeySet = mValue.keySet();

            for (String mValueKey : mValueKeySet) {

                Integer mValueValue = mValue.get(mValueKey);

                System.out.println("\t" + mValueKey + "-" + mValueValue);

            }

        }

Map嵌套List


      HashMap<String, ArrayList<String>> hashMap = new HashMap<String, ArrayList<String>>();

        ArrayList<String> array1 = new ArrayList<String>();

        array1.add("吕布");

        array1.add("周瑜");

        array1.add("包青天");

        hashMap.put("三国演义人物", array1);

        ArrayList<String> array2 = new ArrayList<String>();

        array2.add("令狐冲");

        array2.add("林平之");

        array2.add("包青天");

        hashMap.put("笑傲江湖人物", array2);

        //遍历集合

        Set<String> keySet = hashMap.keySet();

        for (String key : keySet) {

            System.out.println(key);

            ArrayList<String> valueList = hashMap.get(key);

            for (String string : valueList) {

                System.out.println("\t" + string);

            }

        }

多层嵌套


      HashMap<String, HashMap<String, ArrayList<Student>>> mMap = new HashMap<String, HashMap<String, ArrayList<Student>>>();

        // 北京校区数据

        HashMap<String, ArrayList<Student>> bjmMap = new HashMap<String, ArrayList<Student>>();

        ArrayList<Student> array1 = new ArrayList<Student>();

        Student s1 = new Student("林青霞", 27);

        Student s2 = new Student("风清扬", 30);

        array1.add(s1);

        array1.add(s2);

        ArrayList<Student> array2 = new ArrayList<Student>();

        Student s3 = new Student("赵雅芝", 28);

        Student s4 = new Student("武鑫", 29);

        array2.add(s3);

        array2.add(s4);

        bjmMap.put("基础班", array1);

        bjmMap.put("就业班", array2);

        mMap.put("北京校区", bjmMap);

        // 广州校区数据

        HashMap<String, ArrayList<Student>> xamMap = new HashMap<String, ArrayList<Student>>();

        ArrayList<Student> array3 = new ArrayList<Student>();

        Student s5 = new Student("范冰冰", 27);

        Student s6 = new Student("刘意", 30);

        array3.add(s5);

        array3.add(s6);

        ArrayList<Student> array4 = new ArrayList<Student>();

        Student s7 = new Student("李冰冰", 28);

        Student s8 = new Student("张志豪", 29);

        array4.add(s7);

        array4.add(s8);

        xamMap.put("基础班", array3);

        xamMap.put("就业班", array4);

        mMap.put("广州校区", xamMap);

        // 遍历集合

        Set<String> mMapSet = mMap.keySet();

        for (String mMapKey : mMapSet) {

            System.out.println(mMapKey);

            HashMap<String, ArrayList<Student>> mMapValue = mMap.get(mMapKey);

            Set<String> mMapValueSet = mMapValue.keySet();

            for (String mMapValueKey : mMapValueSet) {

                System.out.println("\t" + mMapValueKey);

                ArrayList<Student> mMapValueValue = mMapValue.get(mMapValueKey);

                for (Student s : mMapValueValue) {

                    System.out.println("\t\t" + s.getName() + "-" + s.getAge());

                }

            }

        }

来自为知笔记(Wiz)

时间: 2024-10-14 12:45:40

遍历 集合 数组 增强for Iterator的相关文章

跟王老师学集合(三):使用Iterator接口遍历集合元素

使用Iterator接口遍历集合元素 主讲人:王少华  QQ群号:483773664 学习目标: 1 掌握使用Iterator接口遍历集合元素 一.Iterator概述 Iterator接口主要用于遍历,因此Iterator对象也被称为迭代器.Iterator接口里定义了如下三个方法: boolean hasNext():如果被迭代的集合元素还没有被遍历,则返回true Object next():返回集合里下一个元素 void remove():删除集合里上一次next方法返回的元素 二.利用

Java遍历集合的几种方法

遍历集合的几种方法 用不同的方法遍历集合. public interface Iterator:对Collection进行迭代的迭代器.迭代器取代了Java Collections FrameWork中的Enumeration import java.util.ArrayList; import java.util.Collection; import java.util.Enumeration; import java.util.Iterator; import java.util.List;

增强for循环遍历集合或数组

遍历:for循环遍历数组或集合:iterator迭代器遍历集合:还有增强for循环(for each)遍历数组或集合: 遍历数组: 遍历集合: 原文地址:https://www.cnblogs.com/wmqiang/p/10658532.html

java8 增强的Iterator遍历集合元素

Iterator接口也是Java集合框架的成员,与Collection和Map两个系列的集合不一样的是Collection和Map系列主要用于充当容器的作用,而Iterator正如其名字一样是主要用于迭代访问Collection集合中的元素,Iterator对象也被称为迭代器. Iterator接口里面定义了下面4个方法: >boolean hasNext():如果被迭代遍历的集合还没有被遍历完,返回True >Object next():返回集合里面的下一个元素 >remove():删

使用增强for循环遍历集合的时候操作集合的问题?

1 // 遍历一个list 2 public static void printList(List<String> list){ 3 for (String string : list) { 4 list.add("eeee"); // 运行错误 5 System.out.println(string); 6 } 7 System.out.println("遍历中: "+list); 8 } 9 异常信息如下: 10 Exception in threa

遍历集合,数组和字典

1.字典的遍历 NSDictionary *dict = @{@"name": @"luoguankun",@"address":@"北京"}; //通过for循环遍历NSDictionary,不推荐 NSArray *keys = [dict allKeys]; for (int i = 0; i < keys.count ; i++) { NSString *value = [dict objectForKey:ke

遍历字典数组集合

1 NSArray *cityArray = [NSArray arrayWithObjects:@"中国北京",@"中国郑州",@"中国洛阳",@"中国杭州",@"中国香港",@"中国台湾", nil]; 2 NSDictionary *personInforDic = [NSDictionary dictionaryWithObjectsAndKeys:@"zhangsan

java基础第十二篇之集合、增强for循环、迭代器和泛型

Collection接口中的常用方法: * 所有的子类子接口都是具有的 * 集合的方法:增删改查 * * public boolean add(E e);//添加元素 返回值表示是否添加成功 * public boolean remove(Object o);//删除元素,返回值表示是否删除成功 * 没有修改方法 * 查询元素的方法没有,但是 * public int size();//查询集合集合中元素的个数 * //其他方法: * public void clear();//清空集合 * p

遍历集合的方法

使用增强for循环和迭代器遍历集合 package com.aff.coll; import java.util.ArrayList; import java.util.Collection; import java.util.Date; import java.util.Iterator; import org.junit.Test; public class TestFor { // 面试题 @Test public void test3() { String[] str = new Str