Specifies whether equal elements in the collection are, in fact,
distinguishable with information not readily available. That is, if a
particular value is to be removed from the collection, then there is
one and only one value that can be removed, even if there are other
elements which are equal to it.
In most collection cases, elements are not distinguishable (equal is
equal), thus this method defaults to return false. In some cases,
however, they are. For example, the collection returned from the map's
values() collection view are backed by the map, so while there may be
two values that are equal, their associated keys are not. Since the
keys are distinguishable, the values are.
This flag is used to skip some verifications for iterator.remove()
where it is impossible to perform an equivalent modification on the
confirmed collection because it is not possible to determine which
value in the confirmed collection to actually remove. Tests that
override the default (i.e. where equal elements are distinguishable),
should provide additional tests on iterator.remove() to make sure the
proper elements are removed when remove() is called on the iterator.