集合(Collection(Set))

|Collection
   ||List
   ||Set
   ||Queue

我们来看看Set的JDK,因为它继承Collection,我们主要关心它和Collection的区别(相同的部分就略过不写注释,可参照Collection):

//We can know that Set is interface and extends Collection
public interface Set<E> extends Collection<E> {
///// Query Operations
   int size();
   boolean isEmpty();
   boolean contains(Object o);
   Iterator<E> iterator();
   Object[] toArray();
   <T> T[] toArray(T[] a);
  
///// Modification Operations
   //Return true if added, the same element can't be added to a Set
   //Also you can add a null element but only once
   boolean add(E e);

   boolean remove(Object o);

///// Bulk Operations
   boolean containsAll(Collection<?> c);
   boolean retainAll(Collection<?> c);
   boolean removeAll(Collection<?> c);
   void clear();

   //Add all the elements of c which are not contained in this Set
   //Return true if added  
   boolean addAll(Collection<? extends E> c);

///// Comparison and hashing
   boolean equals(Object o);
   int hashCode();
   default Spliterator<E> spliterator() {
}

Set在Collection的基础上加了一点定义。Set,从数学上讲也是不允许重复元素的,而且可以包含null,即空元素。所以对于Set, add操作是不能添加已有的元素的。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写在前面自开始在公司实习以来,经常都要用到集合框架。不仅后台要用,在前台做数据交互的时候用得也多。所以我想着是时候...
    EakonZhao阅读 8,499评论 0 12
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,093评论 18 399
  • 一、基础知识:1、JVM、JRE和JDK的区别:JVM(Java Virtual Machine):java虚拟机...
    杀小贼阅读 7,057评论 0 4
  • 我是大四党,马上毕业,也马上要失业了。这两天在整理论文答辩结束后的各种表格,突然觉得,大学就这么过去了,而这四年我...
    我说我是好姑娘阅读 1,657评论 4 1
  • 001 曾国藩虽去世已一百余年,他的思想深深影响了几代中国人。如果中国历史用人物来断代,可以这么说:曾国藩是古代历...
    乐正蝶阅读 2,649评论 0 1