Как проверить равенство аннотаций? - PullRequest
6 голосов
/ 26 июля 2011

Как бы вы реализовали этот метод:

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 очевидно и похоже на ожидаемое поведение стандартного equals метода обычных объектов в Java (проблема в том, что мы не можем переопределить equals для аннотаций).

Есть ли библиотеки?или стандартные реализации?

Ответы [ 2 ]

2 голосов
/ 26 июля 2011

Не работает ли переопределение для Annotation?Может быть, я не понимаю ваш вопрос.

1 голос
/ 01 апреля 2016

Если вы хотите проверить, являются ли a1 и a2 одинаковыми аннотациями. Попробуй это: a1.annotationType (). равен (a2.annotationType ())

...