zoukankan      html  css  js  c++  java
  • Java集合之Collection接口

    Collection是集合的顶级接口之一。

    源码展示

    package java.util;
    
    import java.util.function.Predicate;
    import java.util.stream.Stream;
    import java.util.stream.StreamSupport;
    
    public interface Collection<E> extends Iterable<E> {
    
        int size();
    
        boolean isEmpty();
    
        boolean contains(Object o);
    
        Iterator<E> iterator();
    
        Object[] toArray();
    
        <T> T[] toArray(T[] a);
    
        boolean add(E e);
    
        boolean remove(Object o);
    
        boolean containsAll(Collection<?> c);
    
        boolean addAll(Collection<? extends E> c);
    
        boolean removeAll(Collection<?> c);
    
        boolean retainAll(Collection<?> c);
    
        void clear();
    
        boolean equals(Object o);
    
        int hashCode();
    
        @Override
        default Spliterator<E> spliterator() {
            return Spliterators.spliterator(this, 0);
        }
    
        default Stream<E> stream() {
            return StreamSupport.stream(spliterator(), false);
        }
     
        default Stream<E> parallelStream() {
            return StreamSupport.stream(spliterator(), true);
        }
    
        default boolean removeIf(Predicate<? super E> filter) {
            Objects.requireNonNull(filter);
            boolean removed = false;
            final Iterator<E> each = iterator();
            while (each.hasNext()) {
                if (filter.test(each.next())) {
                    each.remove();
                    removed = true;
                }
            }
            return removed;
        }
    }
    

    源码分析

    1、java.util.stream:里面有对流的各种操作。
    2、java.util.function.Predicate:用来判断一个参数是否符合要求。
    3、java.util.Spliterator:为了并行遍历元素而设计的一个迭代器。

  • 相关阅读:
    较新版FlowPortal BPM不能回车登录
    数据库 master拒绝了 create database 权限
    (FFOS Gecko & Gaia) OTA
    (FFOS Gecko & Gaia) OTA
    (FFOS Gecko & Gaia) OTA
    (FFOS Gecko & Gaia) OTA
    (FFOS Gecko & Gaia) OTA
    (FFOS Gecko & Gaia) OTA
    (FFOS Gecko & Gaia) IPC
    (FFOS Gecko) Telemetry
  • 原文地址:https://www.cnblogs.com/feiqiangsheng/p/11240378.html
Copyright © 2011-2022 走看看