Package cpsc331.collections
Interface Set<E>
-
- All Known Subinterfaces:
OrderedSet<E>
public interface Set<E>
Provides an interface for a set whose elements have type E.
Set Invariant: A finite set of non-null elements of type E is maintained.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
contains(E e)
Reports whether a given element belongs to this set.void
include(E e)
Adds an input element to this set, throwing an ElementFoundException if this element already belongs to it.void
remove(E e)
Removes an input element to this set, throwing a NoSuchElementException if this element does not belong to it.
-
-
-
Method Detail
-
contains
boolean contains(E e) throws java.lang.NullPointerException
Reports whether a given element belongs to this set.- Parameters:
e
- the element to be searched for- Returns:
- true if this element is found; false otherwise
Precondition:
- The Set Invariant is satisfied.
- A value e with type E has been given as input.
- If the given element e is null then a NullPointerException is thrown.
- Otherwise (that is, if the given element is not null), if the given element e belongs to this set then “true” is returned; “false” is returned otherwise.
- Throws:
java.lang.NullPointerException
- if the given element is null
-
include
void include(E e) throws java.lang.NullPointerException, ElementFoundException
Adds an input element to this set, throwing an ElementFoundException if this element already belongs to it.- Parameters:
e
- the element to be added to this set- Throws:
java.lang.NullPointerException
- if the given element is nullElementFoundException
- if this element is not null but is already in the set
Precondition:
- The Set Invariant is satisfied.
- A value e with type E has been given as input.
- The Set Invariant is satisfied.
- If the input element is null then a NullPointerException is thrown.
- If the input element is not null and it is not already an element of this set, then this element is added to it.
- If the input element is not null and it is already am element of this set then an ElementFoundException is thrown (and this set is not changed).
-
remove
void remove(E e) throws java.lang.NullPointerException, java.util.NoSuchElementException
Removes an input element to this set, throwing a NoSuchElementException if this element does not belong to it.- Parameters:
e
- the element to be removed from this set- Throws:
java.lang.NullPointerException
- if the given element is nulljava.util.NoSuchElementException
- if this element was not in this set
Precondition:
- The Set Invariant is satisfied.
- A value e with type E has been given as input.
- If the input element is null then a NullPointerException is thrown.
- If the input element is not null and is an element of this set, then the input element is removed from this set.
- If the input element is not null and is not an element of this set then a NoSuchElementException is thrown (and this set is not changed).
-
-