Я ожидаю, что следующее вернет true.Список объектов против сравнения значений строк
public class HudsonJob {
private String name;
private String status;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public boolean equals(Object jobName) {
return name.toLowerCase().equals(((String)jobName).toLowerCase());
}
public int hashCode() {
return name.hashCode();
}
}
,
List<HudsonJob> existingJbsLst = hudsonUtil.getAllJobs(); // returns multiple HudsonJob objects in the list.
В заявлении я ожидаю, чтобы вернуться верно, то:
boolean isExistingJob = existingJbsLst.contains("AnExistingJOB");
всегда возвращается ложь.
OR boolean isExistingJob = existingJbsLst.equals("AnExistingJOB");
также возвращает false.
Что нужно добавить/изменить в коде, чтобы получить ожидаемое возвращаемое значение.
Вы должны либо добавить пустые чеки, или по умолчанию Инициализаторы .. так что ваш код не врезаться на нуль – Nix
Это просто пример код, а не полный код, пожалуйста, возьмите цель – srinannapa
Ваш пример путает людей. Пожалуйста, прямо покажите, как вы выполняете сравнения, и какие типы вы сравниваете. – Nix