List和Map的遍历操作

来源:互联网 发布:淘宝一个心要多少单 编辑:程序博客网 时间:2024/05/17 00:54

List和Map的遍历操作:
List:

public class TestList {    public static void main(String[] args) {        List<String> list = new ArrayList<>();        list.add("孙悟空");        list.add("唐三藏");        list.add("猪八戒");        list.add("沙悟净");        String listString = list.toString();        System.out.println(listString);//      第一种方式遍历list集合:for循环        Integer size = list.size();        for (int i = 0; i < size; i++) {            String value1 = list.get(i);            System.out.println(value1);        }        System.out.println("==========================");//      第二种方式遍历list集合:iterator        Iterator<String> iterator = list.iterator();        while (iterator.hasNext()) {            String value2 = iterator.next();            System.out.println(value2);        }        System.out.println("==========================");//      第三种方式遍历list集合:foreach        for (String string : list) {            System.out.println(string);        }    }}

Map

public class TestMap {    public static void main(String[] args) {        Map<String, Integer> map = new HashMap<>();        map.put("孙悟空", 1);        map.put("唐三藏", 2);        map.put("猪八戒", 3);        map.put("沙悟净", 4);//      map遍历操作的第一种方法:keyset + foreach//      采用keyset方法通过key值获取value值---》效率低        Set<String> keySet = map.keySet();        for (String key : keySet) {            Integer value = map.get(key);            System.out.println("键:"+ key + "值:"+ value);        }//      map遍历操作的第二种方式:map.entrySet();+foreach 方法进行遍历        Set<Entry<String, Integer>> set = map.entrySet();        for (Entry<String, Integer> entry : set) {            String key = entry.getKey();            Integer value = entry.getValue();            System.out.println("键:"+ key + "值"+value);        }//      map遍历操作的第三种方式:map.entrySet() +迭代器        Iterator<Entry<String, Integer>> entrySet = map.entrySet().iterator();        while (entrySet.hasNext()) {            Entry<String, Integer> entry = entrySet.next();            String key = entry.getKey();            Integer value = entry.getValue();            System.out.println("键:" + key + " " + "值:" + value);        }    }}

Map的前两种遍历操作都是在foreach的基础上进行遍历操作的。
而:
*keySet是键的集合,Set里面的类型即key的类型
entrySet是 键-值 对的集合,Set里面的类型是Map.Entry*

原创粉丝点击