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

java_集合的遍历总结

2013-07-09 14:09 260 查看
package cn.itcast.demo3;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.HashSet;

import java.util.List;

import java.util.Map;

import java.util.Set;

import org.junit.Test;

import java.util.Iterator;

import java.util.Map.Entry;

//增强for

public class Demo1 {

    // 增强for是用来进行迭代的。

    // 格式 for(类型 变量名:容器){} 它是对数组或集合进行遍历。

    // 如果要想使用 for-each 要求必须实现Iterable.

    // 1.遍历数组

    // 体验

    @Test

    public void fun1() {

        // 传统方式 通过循环+下标

        int[] arr = { 24, 25, 2, 6 };

        //        

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

            int arr_value = arr[i]; // 使用下标遍历可以对元素进行精确控制。

            System.out.println(arr_value);

        }

        // 增强for遍历

        for (int arr_value : arr) {

            System.out.println(arr_value);

        }

    }

    // 2.遍历List与Set

    @Test

    public void fun2() {

        // 遍历List

        List list = new ArrayList();

        list.add("abc");

        list.add("def");

        list.add("kkk");

        // 传统遍历

        // 1迭代器 Iterator

        // for (Iterator it = list.iterator(); it.hasNext();) {

        // // list.add("123");// 使用Iterator迭代器,在迭代过程中不能对集合进行操作。

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

        // }

        // 2对于List集合可以使用 ListIterator迭代器 ,可以在迭代过程中对集合进行操作。

        // ListIterator it = list.listIterator();

        //

        // while (it.hasNext()) {

        // it.add("a");

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

        // }

        // 3使用 get方法获得元素

        // for (int i = 0; i < list.size(); i++) {

        //

        // System.out.println(list.get(i));

        // }

        // 4.使用for-each

        for (Object obj : list) {

            System.out.println(obj);

        }

    }

    // 3.Set

    @Test

    public void fun3() {

        Set set = new HashSet();

        set.add("abc");

        set.add("123");

        // 迭代器

        // for (Iterator it = set.iterator(); it.hasNext();) {

        //

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

        // }

        // for-each

        for (Object obj : set) {

            System.out.println(obj);

        }

    }

    // 4.遍历Map ----使用keySet

    @Test

    public void fun4() {

        // Map集合遍历

        Map map = new HashMap();

        map.put("a", "xxx");

        map.put("b", "xxx");

        map.put("c", "xxx");

        // 使用keySet方式

        // for (Iterator it = map.keySet().iterator(); it.hasNext();) {

        // Object key = it.next();

        //

        // Object value = map.get(key);

        //

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

        // }

        for (Object key : map.keySet()) {

            System.out.println(key + "  " + map.get(key));

        }

    }

    // 遍历Map使用 entrySet

    @Test

    public void fun5() {

        Map map = new HashMap();

        map.put("a", "xxx");

        map.put("b", "xxx");

        map.put("c", "xxx");

        // Set set = map.entrySet();

        //

        // for (Iterator it = set.iterator(); it.hasNext();) {

        //

        // Entry obj = (Entry) it.next();

        //            

        // System.out.println(obj.getKey()+"  "+obj.getValue());

        // }

        for (Object obj : map.entrySet()) {

            Entry entry = (Entry) obj;

            System.out.println(entry.getKey() + "  " + entry.getValue());

        }

    }

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