Я даю значение LocalDate, а затем хочу указать другое, но я хочу убедиться, что новый не совпадает с предыдущим.Я написал некоторый код, но, похоже, не работает.
Flight flight = new Flight();
System.out.println("Give the day of the departure.");
LocalDate day = LocalDate.of(2019, Month.MAY, scanner.nextInt());
flight.setDateOfDeparture(day);
boolean theDay = true; //Flag (reversed way in order to achieve the TRUE logic value).
for (Flight flight1 : flightList) {
if (flight1.getDateOfDeparture() == (flight.getDateOfDeparture())) {
theDay = false;
}
}
if (theDay) {
// Some logic...
}
Я пробовал также ключевое слово равно.но снова цикл for игнорирует сравнение.
for (Flight flight1 : flightList) {
if (flight1.getDateOfDeparture().equals(flight.getDateOfDeparture())) {
theDay = false;
}
}
После ваших ответов я попробовал многие из предложенных вами решений.Чтобы проверить, попадает ли компилятор в цикл for, я помещаю сообщение печати переменной, которая никогда не видна моей консоли.
for (Flight flight1 : flightList) {
System.out.println(flight1.getDateOfDeparture());
if(flight1.getDateOfDeparture().compareTo(flight.getDateOfDeparture())==0) {
theDay = false;
}
}