DevOps / Apache Groovy Interview questions
What is the difference between == and.equals() in Groovy?
In Groovy, == is overloaded to call .equals(), rather than performing raw reference/identity comparison the way Java's == does for objects, with null handled safely on either side.
To explicitly compare object identity, the same reference, in Groovy, you use the is() method, like a.is(b), since == no longer serves that purpose the way it does in Java.
This is a common source of confusion for developers coming from Java, where == on objects checks identity by default and .equals() has to be called explicitly for value comparison - Groovy essentially flips which operator does which by default.
More Related questions...