Почему я не получаю ошибку компиляции для этого?
Поскольку значение, возвращаемое методом, равно игнорируется , пока оно потреблено .
Вы также можете посмотреть на это так, как метод accept IntConsumer
теперь будет выглядеть так:
new IntConsumer() {
@Override
public void accept(int y) {
value1.incrementAndGet();
}
});