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