en
Feedback
Java Interview Tasks

Java Interview Tasks

Open in Telegram

Реальные вопросы и задачи с собеседований. Оригинальный авторский контент. Актуальный материал. Уровень вопросов от junior до supersenior. Автор канала - @alexzelentsov По рекламе: @alexzelentsov и https://telega.in/c/java_interview_tasks

Show more
4 521
Subscribers
-124 hours
-107 days
-2330 days
Posts Archive
#реклама Представь, что тебя связали, кинули в багажник и увезли в ангар за городом Похититель наклоняется к твоему уху и шепчет: "Или ты правильно отвечаешь на 3 вопроса, или пуля летит тебе прямиком в висок: 💚Почему @Transactional в Spring не работает, если вызвать метод внутри того же класса? 💚Почему Kafka с exactly-once семантикой в 3 раза медленнее обычной и когда можно на это забить? 💚2 запроса одновременно читают баланс 1000₽, вычитают по 600₽ и сохраняют - что окажется в бд? " Ну как? Выживешь в такой ситуации? А ведь именно так сейчас выглядит рынок найма - эти вопросы взяты с реальных собесов 😯 Рынок усложнился, и на вакансию джуна спрашивают как на синьора 3 года назад. Нужно реально шарить, и шарить глубоко, только на одних нейронках далеко не уедешь Чтобы разобраться раз и навсегда со Spring, Kafka, Redis и как они реально работают под капотом, Паша Сорокин 18 декабря в 19:00 по МСК проведёт живой открытый урок для Java-разработчиков и тех, кто хочет им стать: 💚 За какие темы надо шарить, чтобы получить оффер на миддла 💚 В каком порядке и до какой глубины их изучать 💚 По каждой технологии (Spring Boot, HTTP, REST, Postgresql, Hibernate, микросервисы, Kafka, Redis) разберут как делать не надо и как делать надо 🟢 Ссылка на урок будет в закрытом канале урока В этом же канале вас ждёт подарок - гайд "Roadmap из 11 шагов до ЗП в 200.000+" P.S. Паша - ex Senior Dev в ВТБ с 6 годами коммерческого опыта, так что фигни не посоветует))

🚀 24-часовой доступ к библиотеке «TECH & EDU» активирован! Мы собрали для вас работающие инструкции, чтобы вы получили: ✦ Ин
🚀 24-часовой доступ к библиотеке «TECH & EDU» активирован! Мы собрали для вас работающие инструкции, чтобы вы получили: ✦ Инструкции по использованию ИИ-ассистентов для написания кода, отладки и анализа проектов. ✦ Гайды по автоматизации обучения: как создать персонального AI-репетитора для освоения языков программирования и сложных концепций. ✦ Набор эффективных промптов для образовательных целей: от структурирования информации до генерации тестовых заданий. Начните учиться умнее, а не сложнее. Используйте технологии на полную с библиотекой «TECH & EDU»! Перейти к материалам

🔍 Друзья, разберёмся, какой интерфейс в Java используется для сортировки объектов! Правильный ответ: Comparator и Comparable. Но из списка в впоросе верный вариант — Comparator! Интерфейс Comparator используется для задания порядка сортировки объектов, когда нельзя или не хочется изменять сам класс объекта. Для справки: CompareTo, Sort и Sortable — таких интерфейсов в стандартной библиотеке Java нет. 👀 Пример применения Comparator:
List<String> list = Arrays.asList("Java", "Python", "C++");
Collections.sort(list, new Comparator<String>() {
    @Override
    public int compare(String s1, String s2) {
        return s1.length() - s2.length();
    }
});
System.out.println(list); // [Java, C++, Python]
Если было полезно — ставьте лайк, подписывайтесь на канал и пишите в комментариях, что бы ещё разобрать! 😉 #java_interview_tasks #java #интервью #собеседование #сортировка #Comparator #Comparable

Какой интерфейс в Java используется для сортировки?
Anonymous voting

🔍 Ответ на задачу про рекурсию, try-catch и counter: Что там происходит? Каждый раз в try печатается "do" и выбрасывается исключение. Затем в catch, если counter <= 3 (а это true до значения 3 включительно), снова вызывается doWithCounter, увеличивая counter при этом! ⚠️ Но! Используется counter++, а не ++counter. Это значит, что в рекурсивный вызов идёт старое значение (а counter увеличится уже после передачи в функцию). То есть вы всегда передаёте "0" в рекурсию, и создаётся бесконечная рекурсия. ❗️Первый вызов поймает исключение, зайдёт в catch и вызовет doWithCounter(0). Этот вызов опять напечатает "do" и опять вызовет doWithCounter(0), и так далее, пока не случится StackOverflowError. "do" будет выводиться до переполнения стека. 📢 Правильный ответ: "do" напечатается бесконечно более 4-х раз. 👉 Было интересно? Ставь лайк, подписывайся и пиши вопросы в комментарии! #java #recursion #exception #interview #стек #java_interview_tasks

Сколько раз напечатается "do"?
Anonymous voting

Сколько раз напечатается "do"?
Сколько раз напечатается "do"?

🔍 Ответ на задачу про преобразование List в Map в Java Давайте разберём, что произойдёт в этом коде:

List<String> list = Arrays.asList("one", "two", "three", "four");
Map<Integer, String> size2Str = list.stream()
        .collect(Collectors.toMap(String::length, Function.identity()));
System.out.println(size2Str.size()); 
🔸 Мы превращаем список строк в Map, где ключ — длина строки, а значение — сама строка. 📌 Важно: toMap по умолчанию выбрасывает исключение, если встречает дубликаты ключей (а у нас ключи — длины строк). При первом попадании строки длины 3 ("one") всё ок. Но когда попадётся "two" — возникнет конфликт ключей! ❗️ Результат: Код выбросит исключение типа IllegalStateException: Duplicate key То есть ничего не напечатает, а программа упадёт с ошибкой. ✅ Если хотите избежать ошибки — добавьте в toMap третий аргумент (как решать конфликт):
.collect(Collectors.toMap(String::length, Function.identity(), (s1, s2) -> s1))
// Этот вариант оставит первое значение. 
🔔 Было полезно? Ставь лайк, подписывайся и пиши свои вопросы или комменты! #java #stream #map #interview #toMap #java_interview_tasks

Что напечатает код?
Anonymous voting

Что напечатает код?
Что напечатает код?

🔍 Ответ на задачу про вычисление среднего двух чисел в Java: 👉 Рассмотрим код: static double average(int x, int y) { return (x + y) / 2; } public static void main(String[] args) { System.out.println(average(0,1)); } Что напечатает программа? 🤔 Метод average принимает два int, возвращает double. (x + y) / 2 — деление целых чисел, результат тоже будет целым (int). Только в конце оно автоконвертируется в double. Для average(0, 1): (0 + 1) / 2 = 1 / 2 = 0 (целое деление!) 💡 Вернётся 0.0 (так как double) ✏️ Если хотите получить десятичное число, нужно хотя бы одно число привести к double: return (x + y) / 2.0; Тогда результат будет 0.5! ❗️ Не забывайте про особенности целочисленного деления в Java! Если было полезно — ставьте лайк❤️, подписывайтесь и пишите комментарии! #java #javacode #программирование #интервью #java_interview_tasks

Хватит искать вручную! AI-гиды, которые вы искали, уже собраны для вас в подборке каналов «AI & TECH & IT»! Устали от однотип
Хватит искать вручную! AI-гиды, которые вы искали, уже собраны для вас в подборке каналов «AI & TECH & IT»! Устали от однотипных AI-каналов в Telegram? Новая версия Chat GPT-5.1 уже проанализировала их за вас. Мы нашли авторские каналы с реальными кейсами, а не просто новостями. Всё самое актуальное — без лишней теории. - Поиск узкого места в AI & IT бизнесах. Советы от Евгения Григорьева. - Нейротворчество (Sora, Veo 3, Kling — разборы и лайфхаки). - Вайб-кодинг и автоматизация рутины. - Новостные дайджесты с только что вышедшими инструментами. Всего за 10 минут модель отобрала и структурировала готовую подборку «AI & TECH & IT» — только сливки, без воды. ПОДПИСАТЬСЯ

Что напечатает код?
Anonymous voting

Что напечатает код?
Что напечатает код?

Привет! 👋 Собрали в одну папку всё самое полезное по IT и технологии, что нашли в тг Что внутри: 🔺ИИ (куда без него?): промпты, обзоры, кейсы 🔺IT и разработка 🔺Технологии и инновации 🔺Дизайн и продукты Теперь всё нужное в одном месте 🤌 Если вам тоже «надо» - просто сохраните папку к себе 🤝

🔍 Ответ на задачу про работу с HashMap и null 🗺 ✍️ HashMap в Java разрешает использовать ключ null. Правильный ответ: 5 Если задача была полезна, ставь лайк 👍, подписывайся и пиши свое решение или вопросы в комментариях! 💬 #java #hashmap #null #map #java_tasks #java_interview_tasks

Какой результат будет выведен на экран после выполнения кода?
Anonymous voting

Какой результат будет выведен на экран после выполнения следующего кода?
import java.util.HashMap;

 public class Main {
    public static void main(String[] args) {
        HashMap<String, Integer> map = new HashMap<>();
        map.put(null, 1);
        map.put("a", 2);
        map.put(null, 3);
        System.out.println(map.get(null) + map.get("a"));
    }
}

🔍Тестовое собеседование с ТехЛидом из МТС уже завтра 5 ноября(уже завтра!) в 19:00 по мск приходи онлайн на открытое собесед
🔍Тестовое собеседование с ТехЛидом из МТС уже завтра 5 ноября(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика. Как это будет: 📂 Илья Аров, старший разработчик в МТС, будет задавать реальные вопросы и задачи разработчику-добровольцу 📂 Илья будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью 📂 В конце можно будет задать любой вопрос Илье Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot Реклама. О рекламодателе.

🔍 Ответ на задачу про Immutable объекты в Java 🔒 ✍️ В Java объект типа String является неизменяемым (immutable). Операция s1.concat(" World") создает новый объект строки и присваивает его s1. Переменная s2 остается ссылаться на старую строку "Hello". Поэтому программа выведет: Hello Если задача понравилась, ставьте лайк 👍, подписывайтесь на канал и пишите свои ответы и вопросы в комментариях! Обсудим вместе 😊 #java #string #immutable #interview #java_tasks #java_interview_tasks