Groovy: SpaceShip Operator - CompareTo - Comparable (<=>)

class Person implements Comparable {
    String username
    String email

    int compareTo(other) {
        this.username <=> other.username
    }
}

assert -1 == ('a' <=> 'b')
assert 0 == (42 <=> 42)
assert -1 == (new Person([username:'mrhaki', email: 'test@email.com']) <=> new Person([username:'zavaria', email:'tester@email.com']))
assert [1, 2, 3, 4] == [4, 2, 1, 3].sort{ a, b -> a <=> b }
​

Comments

Popular posts from this blog

அவன் ஏன் கூலியானான்?

Groovy Tuples

தட்டு வண்டியில் காளிக்கோயில் - சிறுகதை