Set Interface

Set is a collection that models the mathematical set abstraction and contains no duplicate elements.

 

Important properties of Set interface

  1. Sets contain no pair of elements e1 and e2 such that e1.equals(e2), and at most one null element.

    • Some implementations may prohibit null elements.

  2. The Set interface places additional stipulations on:

    • the contracts of the add, equals and hashCode methods that are inherited from Collection interface. 

    • the constructors, that all constructors must create a set that contains no duplicate elements.

  3. Great care must be exercised if mutable objects are used as set elements:

    • The behavior of a set is not specified if the value of an object is changed in a manner that affects equals comparisons.

    • It is not permissible for a set to contain itself as an element.

 

Important methods of Set interface

  • add(E e)

    • Adds the specified element to this set if it is not already present

    • If this set already contains the element, the call leaves the set unchanged and returns false. 

  • spliterator()

    • Creates a Spliterator over the elements in this set.

    • This was introduced in Java 8.

  • Other methods include add(E e), addAll(Collection<? extends E> c), clear(), contains(Object o), containsAll(Collection<?> c), equals(Object o), hashCode(),isEmpty(),iterator(),remove(Object o),removeAll(Collection<?> c),retainAll(Collection<?> c),size(),toArray(),toArray(T[] a).

Quick Notes Finder Tags

Activities (1) advanced java (1) agile (3) App Servers (6) archived notes (2) Arrays (1) Best Practices (12) Best Practices (Design) (3) Best Practices (Java) (7) Best Practices (Java EE) (1) BigData (3) Chars & Encodings (6) coding problems (2) Collections (15) contests (3) Core Java (All) (55) course plan (2) Database (12) Design patterns (8) dev tools (3) downloads (2) eclipse (9) Essentials (1) examples (14) Exception (1) Exceptions (4) Exercise (1) exercises (6) Getting Started (18) Groovy (2) hadoop (4) hibernate (77) hibernate interview questions (6) History (1) Hot book (5) http monitoring (2) Inheritance (4) intellij (1) java 8 notes (4) Java 9 (1) Java Concepts (7) Java Core (9) java ee exercises (1) java ee interview questions (2) Java Elements (16) Java Environment (1) Java Features (4) java interview points (4) java interview questions (4) javajee initiatives (1) javajee thoughts (3) Java Performance (6) Java Programmer 1 (11) Java Programmer 2 (7) Javascript Frameworks (1) Java SE Professional (1) JPA 1 - Module (6) JPA 1 - Modules (1) JSP (1) Legacy Java (1) linked list (3) maven (1) Multithreading (16) NFR (1) No SQL (1) Object Oriented (9) OCPJP (4) OCPWCD (1) OOAD (3) Operators (4) Overloading (2) Overriding (2) Overviews (1) policies (1) programming (1) Quartz Scheduler (1) Quizzes (17) RabbitMQ (1) references (2) restful web service (3) Searching (1) security (10) Servlets (8) Servlets and JSP (31) Site Usage Guidelines (1) Sorting (1) source code management (1) spring (4) spring boot (3) Spring Examples (1) Spring Features (1) spring jpa (1) Stack (1) Streams & IO (3) Strings (11) SW Developer Tools (2) testing (1) troubleshooting (1) user interface (1) vxml (8) web services (1) Web Technologies (1) Web Technology Books (1) youtube (1)