Может ли кто-нибудь сказать мне, что должна делать следующая строка в коде, предоставленном моим наставником?Найти дубликаты в ArrayList
if (data.contains(entry))
Полный метод:
public String add(Entry entry) {
if (entry == null)
return "Error: null entry";
if (data.contains(entry))
return "Error: this entry already in the book";
boolean done = data.add(entry);
if (done)
return " entry added";
else
return "entry could not be added";
}
Я думал, что это была проверка существующей записи с теми же реквизитами внутри ArrayList, но когда я добавляю дубликат записи оно не вдаваться в if
заявление так вычислял я ошибочно? Я искал в Интернете, и он говорит, что для этого так почему же он не работает для меня?
вы пытались сравнивать объекты вне если, чтобы увидеть, если одни и те же (с помощью равенства метод)? http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html#contains(java.lang.Object) – lcguida
@rockskull havent сделал что-либо с методами в этом классе, так как мы не могут изменить его в любом случае. Мы расширили классы, заданные для создания адресной книги. Он, должно быть, хочет, чтобы мы использовали это, каким-то образом, почему бы их там положить? – ToniHopkins
Кроме того, стоит отметить, что возвращение статуса строки из метода Java не является нормальным. Вместо этого, если у вас нет значимого возвращаемого значения, сделайте его «методом void». Если что-то пойдет не так, выбросьте исключение. –