Java задачи с собеседований
6.26K subscribers
613 photos
6 videos
19 files
248 links
Задачи, тесты и теоретические вопросы по JAVA.

Репозиторий: https://github.com/proghub-official/java-interview
Прислать задачу/вопрос в дар: @cyberJohnny
Сотрудничество: @cyberJohnny
加入频道
⚙️ Map.computeIfAbsent()

Map.computeIfAbsent() добавляет значение в карту только в том случае, если ключ отсутствует, и использует функцию для вычисления этого значения. Это удобно для ленивой инициализации коллекций и кэширования.

👩‍💻
@javaquiz
⚙️ Метод String.repeat() возвращает строку, которая повторяется заданное количество раз. Это может быть полезно для создания шаблонов, отладочного вывода и форматирования текста.

👩‍💻

@javaquiz
⚙️ List.copyOf()

List.copyOf() создает неизменяемую копию переданной коллекции. Это удобно для защиты данных от изменений и для создания безопасных API.

👩‍💻

@javaquiz
⚙️ Math.nextUp()

Math.nextUp() возвращает следующее большее число с плавающей запятой относительно заданного значения. Это полезно для обеспечения точности вычислений и численной стабильности.

👩‍💻

@javaquiz
⚙️ String.indent()

String.indent() позволяет добавлять или убираать отступы в каждой строке текста. Это удобно для форматирования многострочных текстов.

👩‍💻

@javaquiz
⚙️ Collections.reverse()

Метод Collections.reverse() меняет порядок элементов в списке на противоположный. Это удобно для реверсирования данных без необходимости создания нового списка.

👩‍💻

@javaquiz
⚙️ Метод Collections.frequency() подсчитывает, сколько раз определённый элемент встречается в коллекции. Он перебирает все элементы и сравнивает их с заданным объектом с помощью метода .equals().

Это полезно для анализа данных, подсчёта дубликатов и составления статистики по коллекциям.

👩‍💻

@javaquiz
#вопросы_с_собеседований
Может ли метод main вызвать исключение и если да, то где будет происходить его обработка?

Метод main действительно может вызвать исключение. Это исключение будет передано в JVM (виртуальную машину Java). JVM поймает это исключение и завершит выполнение программы, выводя трассировку стека.

Таким образом, исключение из main приведет к аварийному завершению программы.

Чтобы этого избежать, рекомендуется перехватывать исключения внутри main и обрабатывать их, чтобы они не выходили за его пределы.

👩‍💻

@javaquiz
String.join() соединяет элементы из коллекции или массива в одну строку с заданным разделителем. Это удобно для аккуратного отображения данных и создания текстовых шаблонов.

👩‍💻

@javaquiz
Collections.disjoint() определяет, есть ли у двух коллекций общие элементы. Это полезно для фильтрации, сравнения и улучшения поиска пересечений.

👩‍💻

@javaquiz
⚙️ Collections.nCopies()

Метод Collections.nCopies() создает неизменяемый список, который содержит определенное количество копий одного и того же объекта. Это может быть полезно для инициализации, создания заглушек и формирования шаблонных коллекций.

👩‍💻

@javaquiz
⚙️ Class.getRecordComponents()

Class.getRecordComponents() предоставляет информацию о компонентах записи. Это полезно для рефлексии, сериализации и автоматического отображения данных в классах Record.

👩‍💻

@javaquiz
⚙️ Pattern.asPredicate()

Pattern.asPredicate() преобразует регулярное выражение в Predicate, который можно применять непосредственно в потоках (Stream). Это удобно для фильтрации строк без необходимости явного вызова .matches().

👩‍💻

@javaquiz
ClassLoader.getResources() ищет все ресурсы с заданным именем в classpath и возвращает Enumeration. Это полезно для загрузки всех версий конфигурационных файлов, плагинов или ресурсов из JAR-файлов и папок одновременно. 👩‍💻

@javaquiz
⚙️ Class.getNestMembers()

Class.getNestMembers() возвращает массив всех классов, которые принадлежат одной «группе вложенности» (nest) — то есть тем классам, которые могут обмениваться приватными методами и полями. Это полезно для анализа доступа между вложенными классами и для инструментов анализа байткода.

👩‍💻

@javaquiz