Groovy将==映射到equals()通常很方便,但是当我想通过身份进行比较时该怎么办?例如,GPathResult通过调用text()来实现equals,对于大多数内部节点,它是空的。我正在尝试识别根节点,但是使用该实现它是不可能的。如果我可以通过身份进行比较,那将是可能的。
答案 0 :(得分:43)
答案 1 :(得分:9)
使用is
测试对象标识:
groovy:000> class Foo { }
===> true
groovy:000> f = new Foo()
===> Foo@64e464e4
groovy:000> g = new Foo()
===> Foo@47524752
groovy:000> f.is(g)
===> false
groovy:000> g.is(f)
===> false
groovy:000> f.is(f)
===> true