您将如何实施此方法:
public boolean equal(Annotation a1, Annotation a2) {
...
}
示例输入():
@First(name="1", value="1"), @Second(name="1", value="1")
@First(value="2"), @First(name="2")
@First(value="3"), @First(value="3")
@Second(name="4", value="4), @Second(name="4", value="4")
示例输出:
false
false
true
true
正如您所看到的,equal
的预期行为是明确的,类似于java中常规对象的标准equals
方法的预期行为(问题是我们无法覆盖equals
用于注释)。
是否存在任何库或标准实现?
答案 0 :(得分:2)
Annotation
的{{3}}不起作用吗?也许我不明白你的问题。
答案 1 :(得分:1)
如果要检查a1和a2是否是相同的注释。试试这个: a1.annotationType()。等于(a2.annotationType())