java 8中forEach遍历

来源:互联网 发布:查拉斯图拉如是说 知乎 编辑:程序博客网 时间:2024/06/06 12:27

public class ForEachTest {    public static void main(String[] args) {        /** list */        //ArrayList in Arrays.forEach(Consumer<? super E> action)        Arrays.asList("a", "b", "d").forEach(e -> System.out.println(e));        //ArrayList.forEach(Consumer<? super E> action)        List<Integer> list = new ArrayList<>();        list.add(1);        list.add(2);        list.forEach(e -> System.out.println(e));        /** HashSet */        //HashSet.forEach(Consumer<? super T> action)        Set set = new HashSet<>(list);        set.forEach(e -> System.out.println(e));        /**  Stack / Vector */        Stack<String> stack = new Stack<>();        stack.push("A");        stack.push("B");        stack.push("C");        //Vector.forEach(Consumer<? super E> action)        stack.forEach(e -> System.out.println(e));        /**  map */        Map<String,String> map = new HashMap<>();        map.put("a", "a");        map.put("b", "b");        //KeySet in HashMap.forEach(Consumer<? super K> action)        map.keySet().forEach(e -> System.out.println(e));        //EntrySet in HashMap.forEach(Consumer<? super Map.Entry<K,V>> action)        map.entrySet().forEach(e -> {            System.out.println(e.getKey());            System.out.println(e.getValue());        });        //Values in HashMap.forEach(Consumer<? super V> action)        map.values().forEach(e -> System.out.println(e));        //HashMap.forEach(BiConsumer<? super K, ? super V> action)        map.forEach((k, y) -> {            System.out.println(k);            System.out.println(y);        });    }}

执行forEach的时候不允许修改元素长度,否则会抛出ConcurrentModificationException异常









1 0
原创粉丝点击