Общие вопросы
Смешанные вопросы по Java.
Открыть разделБаза Hintsage
Язык Java, JVM и экосистема серверной разработки.
Темы раздела
Смешанные вопросы по Java.
Открыть разделБазовая семантика языка, типы, методы, классы и ключевые конструкции.
Открыть разделНаследование, полиморфизм, интерфейсы, классы и разрешение методов.
Открыть разделJava Collections Framework, контракты, реализации и сложность операций.
Открыть разделJava Memory Model, потоки, синхронизация и java.util.concurrent.
Открыть разделЗагрузка классов, память JVM, GC, JIT и диагностика.
Открыть разделПараметризация типов, bounds, wildcards и стирание типов.
Открыть разделФункциональные интерфейсы, streams, collectors и параллельная обработка.
Открыть разделИерархия исключений, обработка ошибок и управление ресурсами.
Открыть разделПрактика
Какой исполнитель по умолчанию обслуживает задачи параллельного Stream?
Укажите результат применения flatMap, если функция преобразования вернула null для одного элемента.
Чтение файла через Stream<String> завершается терминальной операцией: почему стрим всё равно нужно явно закрыть?
В чём механистическое отличие takeWhile от filter при обработке упорядоченного стрима?
При проектировании источника для параллельного стрима какую роль играет метод trySplit?
В ситуации, когда один стрим должен сформировать единый итог из двух независимых сборов, какой механизм Collectors.teeing позволяет сделать это за один проход?
При сборе упорядоченного стрима в Map порядок ключей при обходе результата меняется: каким механизмом это объясняется?
В цепочке фильтрации один из предикатов объединён через Predicate.and: при каком результате первого предиката второй гарантированно не запускается?
В параллельном сборе Stream с нетривиальным Collector когда применяется finisher и почему его нельзя считать обработчиком каждого частичного результата?
Для деления элементов по булеву условию какой коллектор точнее выражает задачу: partitioningBy или groupingBy?
Какое свойство поведения Stream нарушается, когда предикат изменяет общее состояние?
При сборе Stream в Map функция слияния для повторяющегося ключа возвращает null: что произойдёт с этой записью?
В сервисе нужно сохранить все группы, даже если после условия в группе нет элементов. Почему в коде withDownstream содержит ключ a, а beforeGrouping — нет?
import java.util.*;
import java.util.stream.*;
List<String> words = List.of("ant", "ape", "bat", "bear");
Map<Character, List<String>> beforeGrouping = words.stream()
.filter(s -> s.length() > 3)
.collect(Collectors.groupingBy(s -> s.charAt(0)));
Map<Character, List<String>> withDownstream = words.stream()
.collect(Collectors.groupingBy(
s -> s.charAt(0),
Collectors.filtering(s -> s.length() > 3, Collectors.toList())
));
В каком порядке выполняются несколько обработчиков, зарегистрированных у одного Stream через onClose?
В отчёте сумма значений выходит за диапазон int при использовании summingInt: почему результат может оказаться неверным?
При использовании partitioningBy для потока без элементов одного класса гарантируется ли наличие обеих булевых ключей в результате?
Может ли переопределяющий метод объявить более широкое проверяемое исключение, чем метод родителя?
Как компилятор Java определяет, обязан ли вызывающий код обработать исключение, объявленное методом?
В чём причина ограничения Java, запрещающего указывать в одном multi-catch альтернативы, связанные отношением наследования?
Представьте, что обработчик catch(Exception) не сработал при аварийном завершении из-за OutOfMemoryError: почему так происходит?
Показано 341–360 из 403