Библиотека собеса по Java | вопросы с собеседований
6.31K subscribers
393 photos
8 videos
426 links
Вопросы с собеседований по Java и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/08c603b6

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
✔️ Java-тест: Stream API и группировка

Попробуем новый формат, сами задачки будут разные. Представим задачу 👇

Есть список строк:
List<String> names = List.of("Alice", "Bob", "Anna", "Brian", "Alex");


📋 Задание:

Сгруппируйте имена по первой букве и выведите результат в формате:
A -> [Alice, Anna, Alex]
B -> [Bob, Brian]


Ставьте →🔥, если зашёл формат. Если нет, то → 🤔

💬 Пишите решение в комментариях, главное прячьте под спойлер.

🐸 Библиотека собеса по Java

#practise
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27🤔3👍2
✔️ Java-тест: Docker edition

Продолжаем тестить новый формат. Представим задачу 👇

У вас есть Spring Boot-приложение. Нужно собрать Docker-образ, который:
1. Основан на официальном JDK 21
2. Поддерживает порт 8080
3. Настраивает часовой пояс контейнера на Москву (Europe/Moscow)


📦 Задание:

Составьте Dockerfile, который корректно запускает приложение в контейнере по условиям выше.

Ставьте →🔥, если зашёл формат. Если нет, то → 🤔

💬 Скидывайте Dockerfile в комментарии, главное прячьте под спойлер.

🐸 Библиотека собеса по Java

#practise
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍3👏1🤔1
✔️ Java-тест: Concurrency edition

Проверим, как вы дружите с многопоточностью 👇

У вас есть метод doWork(), который выполняет тяжёлую операцию (например, чтение и обработку файла).

📦 Задание:

Нужно запустить ровно 5 потоков, каждый из которых вызывает doWork(), и дождаться завершения всех перед продолжением выполнение основного потока.

Разрешено использовать любые инструменты.

Ставьте → 🔥, если нравится формат. Если нет → 🤔

💬 Решения под спойлер. Сравним, какое будет лучше.

🐸 Библиотека собеса по Java

#practise
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍1👏1
✔️ Java-тест: Retry с exponential backoff

Напишите метод для production-кода 👇

📦 Задание

Реализуйте метод, который выполняет операцию с повторными попытками:

public <T> T retry(Supplier<T> operation, 
int maxAttempts,
long initialDelayMs) {
// Ваш код здесь
// При неудаче - повторить с задержкой
// Задержка удваивается: 100ms -> 200ms -> 400ms
// После maxAttempts выбросить исключение
}


Требования

— Первая попытка без задержки
— Каждая следующая: задержка *= 2
— После maxAttempts пробросить последнее исключение
— Если успех - вернуть результат

Ставьте → 🔥, если нравится формат. Если нет → 🤔

💬 Решения под спойлер. Сравним, какое будет лучше.

🐸 Библиотека собеса по Java

#practise
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥82👍1