У меня есть следующий код:Использование равных и == на LocalDate Object
LocalDate one = LocalDate.of(2016, 1, 1);
LocalDate two = LocalDate.of(2016, 1, 1);
System.out.println(one.equals(two)); // true since contents are same
System.out.println(one == two); // false since references are diff
LocalDate newone = one.with(TemporalAdjusters.nextOrSame(DayOfWeek.FRIDAY));
System.out.println(newone.equals(one));// true since contents are still same
System.out.println(newone == one); //-4- why true here
Вопрос в том, почему на 4 она дает истинное как объекты LocalDate неизменны так сменяющих друг с TemporalAdjuster даст новый LocalDate объект , Если содержимое newone и один не совпадают с содержанием
newone == one returns false
Просьба уточнить это поведение. Благодаря
Я не смотрел код, но 'nextOrSame' имеет в нем слово« тот же », поэтому ... –
Очевидно, что эта настройка не изменяет объект, так как 2016-01-01 уже в пятницу. –