How To Use Groovy Set For Unique Items?

Simpler as it should be, I still can't figure out where I am going wrong:

class A {
    boolean equals(o) { true }
}
def s = [new A(), new A()] as Set
assert s.size() == 1 // Assertion failed: actually gives 2

      

Which method should I override to get uniqueness?

+2


a source to share


1 answer


hashCode , as with Java



class A {
    boolean equals(o) { true }
    int hashCode() { 1 }
}
def s = [new A(), new A()] as Set
assert s.size() == 1

      

+7


a source







All Articles