I wasn't necessarily saying that one wouldn't want reference equality. I was just vaguely wondering about scenarios such as the iterable containing multiple identical instances of T (i.e. A.equals(B) is true, but A == B is not).