2012-05-02 45 views
31

Groovy將==映射到equals()方法通常很方便,但是當我想通過身份進行比較時,我該怎麼做?例如,GPathResult通過調用text()來實現equals,這對大多數內部節點是空的。我試圖確定根節點,但實現它是不可能的。如果我可以通過身份進行比較,那將是可能的。我如何在Groovy中執行等於參考的參考?

回答

36

您使用is方法。即:

a.is(b) 

更多說明

the docs
8

使用is測試對象標識:

groovy:000> class Foo { } 
===> true 
groovy:000> f = new Foo() 
===> [email protected] 
groovy:000> g = new Foo() 
===> [email protected] 
groovy:000> f.is(g) 
===> false 
groovy:000> g.is(f) 
===> false 
groovy:000> f.is(f) 
===> true