Какой из следующих фрагментов кода мы можем добавить после данного кода, чтобы при запуске не было ошибок и не было записей в консоли?
LongStream 1s = LongStream.of(1, 2, 3):
OptionalLong opt = 1s.map(n > n * 10).filter(n -> n < 5).findFirst:
Может быть несколько правильных вариантов
if (opt.isPresent()) System.out.println(opt-get());|
if (opt. isPresent()) System.out.printin(opt.getAsLong());|
opt.ifPresent(System.out.println)
opt.ifPresent(System.out::printin);|
Ничего. Код не скомпилируется.
Ничего. Код на последней строчке бросит ошибку в Runtime .
Другие предметы Колледж Потоки (Streams) в Java Java программирование колледж LongStream OptionalLong ошибки компиляции консольный вывод код на Java фрагменты кода методы Java фильтрация данных Новый
Давайте разберем предложенный фрагмент кода и выясним, какие из предложенных вариантов могут быть добавлены без ошибок.
Исходный код выглядит следующим образом:
LongStream 1s = LongStream.of(1, 2, 3); OptionalLong opt = 1s.map(n -> n * 10).filter(n -> n < 5).findFirst();
Теперь давайте проанализируем каждый из предложенных вариантов:
Этот вариант корректен. Он проверяет, есть ли значение в OptionalLong
с помощью isPresent()
, и если есть, выводит его с помощью get()
. Код скомпилируется и не вызовет ошибок.
Этот вариант содержит опечатку в методе printin
(правильное название - println
). Из-за этой опечатки код не скомпилируется, и мы получим ошибку компиляции.
Этот вариант корректен. Метод ifPresent
выполняет переданную ему лямбда-функцию только если значение присутствует. В данном случае, если значение есть, оно будет выведено на консоль. Код скомпилируется и выполнится без ошибок.
Этот вариант также содержит опечатку в методе printin
(правильное название - println
). Из-за этой опечатки код не скомпилируется, и мы получим ошибку компиляции.
Это неверно, так как некоторые предложенные варианты корректны и могут быть добавлены после исходного кода.
Это также неверно, так как код не вызовет ошибок во время выполнения, если использовать правильные варианты.
Таким образом, правильные варианты, которые можно добавить после данного кода, это:
Надеюсь, это объяснение помогло вам понять, какие варианты являются корректными и почему.