是否有可能让EMF对象实现hashCode
和equals
?我想把模型对象作为HashMap
中的键使用。
在IT技术方面,EObject的javadoc非常清晰明了。一个EObject可能不会特化hashCode
或equals
。然而,只要你了解Object#equals(..)
和#hashCode
的标识语义,就可以在映射中使用它们。
如果方法背后的算法适用于您的用例,您可以使用EcoreUtil.equals()
。
equals
和 hashCode
方法,然后将该包装对象用作键。这将强制在搜索映射时始终实例化包装对象,但根据使用模式,可能不会太麻烦。或者您可以为每个EMF-*Impl
类实现(生成)equals
/ hashCode
方法。您需要在方法头上方插入一个@generated not
注释。