首先对Connection的源码进行分析:
public interface Collection<E> extends Iterable<E> { //返回当前集合中元素的数量 int size();
//判断集合中是否含有元素 boolean isEmpty();
//查找集合中是由含有对象o boolean contains(Object o);
//返回一个迭代器用于访问集合中的每一个集合 Iterator<E> iterator();
//返回一个内涵集合所有元素的array Object[] toArray();
//返回一个内含所有元素的array。运行期间返回的array和a的类型相同,需要转换为正确的类型 <T> T[] toArray(T[] a);
//将对象添加到集合 boolean add(E e);
//如果集合中的有与元素o相匹配的对象,将其删除 boolean remove(Object o);
//查找的集合中的元素是否含有集合c中的所有元素 boolean containsAll(Collection<?> c);
//将集合c中的yuans都添加到集合中 boolean addAll(Collection<? extends E> c);
//从集合中删除所有的c集合中所包含的元素 boolean removeAll(Collection<?> c);
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; }
//从集合中删除集合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); } }