Instance Method

# intersection(_:)

Returns a new set with the elements that are common to both this set and the given sequence.

`other`

Another set.

A new set.

## Discussion

In the following example, the `bothNeighborsAndEmployees` set is made up of the elements that are in both the `employees` and `neighbors` sets. Elements that are in only one or the other are left out of the result of the intersection.

## Relationships

### Combining Sets

`func union<S>(S) -> Set<Element>`

Returns a new set with the elements of both this set and the given sequence.

`func formUnion<S>(S)`

Inserts the elements of the given sequence into the set.

`func intersection<S>(S) -> Set<Element>`

Returns a new set with the elements that are common to both this set and the given sequence.

`func formIntersection<S>(S)`

Removes the elements of the set that aren’t also in the given sequence.

`func symmetricDifference<S>(S) -> Set<Element>`

Returns a new set with the elements that are either in this set or in the given sequence, but not in both.

`func formSymmetricDifference(Set<Element>)`

Removes the elements of the set that are also in the given sequence and adds the members of the sequence that are not already in the set.

`func formSymmetricDifference<S>(S)`

Replace this set with the elements contained in this set or the given set, but not both.

`func subtract(Set<Element>)`

Removes the elements of the given set from this set.

`func subtract<S>(S)`

Removes the elements of the given sequence from the set.

`func subtracting(Set<Element>) -> Set<Element>`

Returns a new set containing the elements of this set that do not occur in the given set.

`func subtracting<S>(S) -> Set<Element>`

Returns a new set containing the elements of this set that do not occur in the given sequence.