uz
Feedback
Java Interview Tasks

Java Interview Tasks

Kanalga Telegram’da o‘tish

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

Ko'proq ko'rsatish
4 521
Obunachilar
-124 soatlar
-107 kunlar
-2330 kunlar
Postlar arxiv
Если машина проехала весь путь в одну сторону со скоростью 40 км/ч, а обратно - со скоростью 60 км/ч, какова была её средняя скорость?
Anonymous voting

#реклама Ваш конкурент уже использует ИИ не так, как пишут в блогах. И вот почему вы этого не видите. Каждый день выходит сот
#реклама Ваш конкурент уже использует ИИ не так, как пишут в блогах. И вот почему вы этого не видите. Каждый день выходит сотня статей: «10 нейросетей, которые изменят всё». Вы пробуете ChatGPT, Midjourney, но результат — как у всех. Милые картинки и шаблонные тексты. Где же прорывная эффективность? Где то самое конкурентное преимущество? Секрет в том, что по-настоящему крутые кейсы и инсайты рождаются не в публичном поле, а в закрытых коммьюнити и чатах практиков. Пока мы читаем новости о вчерашнем дне, они: Уже тестируют свежие, нераскрученные модели с открытым весом. Делятся промтами, которые дают на 80% более качественный результат. Спорят о том, какой стек технологий умрет через год, а какой — взорвет рынок. Находят подводные камни в API новых моделей, экономя своим компаниям тысячи долларов. Я устал рыскать по всему интернету и собрал их всех в одну папку. Подписка на эту папку — это как иметь личный канал в Slack с лучшими умами в области ИИ. Это не про «какую нейросеть выбрать для картинок». Это про то, как сделать ИИ вашим реальным инструментом для роста, а не игрушкой. Если готовы? Подписывайтесь здесь

Задача с собеседования.
Задача с собеседования.

🔍 Ответ на задачу про MegaClass 📊 Давайте разберём, что именно будет напечатано при выполнении данного кода. Здесь мы имеем класс MegaClass с переопределёнными методами equals() и hashCode(), и работаем с объектами этого класса в HashSet. Обратите внимание на влияние изменения состояния объекта на результат работы методов, связанных с коллекциями. Пояснения: A: set.add(o) - Возвращает true, потому что объект o только что добавлен в set. B: set.contains(new MegaClass(10)) - Возвращает false, так как после изменения поля i, o имеет hashCode = 1000, который не совпадает с 1000 у new MegaClass(10). C: set.add(new MegaClass(10)) - Возвращает true, объект с hashCode равным 10 не найден в set, потому что изменили o. D: set.contains(new MegaClass(1000)) - Возвращает false, так как теперь oбъект, у которого hashcode 1000, содержится в set, но предыдущий объект был добавлен с хешкодом 10 и поэтому он не найдется теперь. E: new MegaClass(10).equals(new MegaClass(1000)) - Возвращает false, так как поля i отличаются. 📈 Этот пример отлично демонстрирует, насколько важно соблюдать неизменяемость полей, участвующих в вычислении hashCode() и equals(), при работе с коллекциями. Если вам понравился анализ этого кода и вы хотите узнавать больше, ставьте лайк, подписывайтесь на канал и делитесь своими мыслями в комментариях! 👍💬 #java #hashcode #equals #collections #java_interview_tasks

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

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

Ответ к вопросу про поиск элемента в коллекции по значению: В случае обеих предложенных реализаций нужно будет последовательно перебрать все элементы в коллекции. Поэтому сложность будет О(n) и для случая linked list и для array list. В данном варианте разницы с точки зрения сложности поиска нет.

Нужно найти элемент в коллекции по значению, какую реализацию лучше выбрать с точки зрения асимптотической сложности?
Anonymous voting

#реклама 🔥 ВЗРЫВНОЙ РОСТ ДОХОДА С ПОМОЩЬЮ ИИ и IT-технологий! В папке «AI & TECH IT» собрали ВСЮ информацию для заработка на
#реклама 🔥 ВЗРЫВНОЙ РОСТ ДОХОДА С ПОМОЩЬЮ ИИ и IT-технологий! В папке «AI & TECH IT» собрали ВСЮ информацию для заработка на нейросетях и в сфере технологий! Уже 1000+ человек автоматизировали рутину и начали зарабатывать. Там тебя ждут: ✦ Beauty-салон, где заявки обрабатывает нейросеть ✦ В честь дня рождения «Лаборатории Нейросетей» БОЛЬШОЙ розыгрыш Подпишись и уничтожь конкурентов с мощью этих каналов: https://t.me/addlist/ai&tech&it

#реклама Я до сих пор ловлю себя на мысли: как мы вообще раньше без этого жили? 🤯 Кажется, ещё вчера ИИ был где-то далеко —
#реклама Я до сих пор ловлю себя на мысли: как мы вообще раньше без этого жили? 🤯 Кажется, ещё вчера ИИ был где-то далеко — в научных статьях и голливудских фильмах. А сегодня он уже: - Пишет за меня продающие тексты, с которыми не справился бы копирайтер; - Анализирует данные и находит клиентов, которые готовы купить прямо сейчас; - Генерирует идеи, от которых мурашки по коже — как я сам до этого не додумался? Самое странное — что это работает уже сегодня. Не через 5 лет. Не в теории. Прямо сейчас. Но меняться страшно. Сложно. Непонятно, с чего начать. Поэтому для вас собрал папку с материалами от людей, которые уже прошли этот путь. Не теоретики — а практики, которые внедрили ИИ в реальные проекты. 🧠 Внутри:
- Кейсы с цифрами: «До/После» внедрения ИИ; - Шаблоны запросов, которые дают результат с первого раза; - Стратегии, которые не найти в открытом доступе.
Это не «очередной набор файлов». Это выглядит как шпаргалка из будущего, которое уже наступило. Хотите заглянуть? 👇 Все здесь

🔍 Ответ на задачу про исключение в стримах Java! 🚨 При выполнении данного кода возникнет исключение NullPointerException. Давайте разберём, почему это происходит. 🤔 Код:
 
public static class Fee {     
    private String description;     

    public Fee(String description) {
        this.description = description;
    }     

    public String getDescription() {
        return description;
    } 
}

public static void main(String[] args) {
    List<Fee> fees = List.of(new Fee(null));
    String s = fees.stream()
            .map(Fee::getDescription)
            .findFirst()
            .orElse("1");
    System.out.println(s);
}
Проблема возникает в строчке findFirst(). Метод .map(Fee::getDescription) создаёт стрим, где первый элемент имеет значение null из-за description равного null в объекте Fee. Когда findFirst() пытается вернуть найденное значение — а это null — метод Optional.of() выбрасывает NullPointerException, поскольку Optional.of() не позволяет обёртывать null значениями. Для обработки null значений нужно использовать Optional.ofNullable(). Чтобы исправить это и избежать исключения, можно немного изменить этот код: String s = fees.stream() .map(Fee::getDescription) .filter(Objects::nonNull) // добавляем этот фильтр .findFirst() .orElse("1"); Этот код сначала фильтрует все null значения из стрима и предотвращает NullPointerException. Если вам понравился разбор, не забудьте поставить лайк, подписаться и оставить комментарий! 😊 #streamAPI #nullHandling #java_interview_tasks

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

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

#реклама Секретное оружие против ИИ-шума 🔥🔥🔥 Вы ведь тоже устали от тонн бесполезности в ленте? Я с коллегами собрал свой
#реклама Секретное оружие против ИИ-шума 🔥🔥🔥 Вы ведь тоже устали от тонн бесполезности в ленте? Я с коллегами собрал свой лист экспертов в одну папку Только те, кто: → Копает глубже хайтек-новостей, → Делится кодом/архитектурами, → Бьет в точку. Просто твой личный фильтр Подруби себе: все здесь P.S. Я тоже там есть😁

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

🔍 Ответ на задачу про работу с многопоточностью в Java Давайте разберёмся, что происходит при запуске данного кода! 🔍
public class ThreadTest {
    public static void main(String[] args) {
        Thread thread = new Thread(() -> {
            for (int i = 0; i < 5; i++) {
                System.out.println(Thread.currentThread().getName() + " - " + i);
            }
        });

        thread.start();
        thread.run();
    }
}
Объяснение: thread::start — запускает новый поток, который выполняет переданное лямбда-выражение. В отдельном потоке выводятся значения от 0 до 4. Поток выполняет метод run, и будет выполняться параллельно с основным потоком. thread::run — здесь метод run вызывается в основном потоке так, как если это был обычный метод, а не в отдельном потоке. Это означает, что в основном потоке без создания нового потока пойдет выполнение того же самого кода ещё раз, так как метод run просто выполняется в потоке, из которого он был вызван. Следовательно, программа завершится успешным выполнением, и будут выведены две последовательности от 0 до 4. Таким образом, правильный ответ — Код скомпилируется и выполнится, но "thread::run()" будет выполняться в основном потоке. Эта ситуация — прекрасный пример, демонстрирующий разницу между методами start() и run() в многопоточности. 🌟 Не забудьте поставить лайк, подписаться на канал и оставлять комментарии с вашими идеями и вопросами! 💬👉 #Java #Многопоточность #Concurrency #java_interview_tasks

Что произойдет при запуске следующего кода?
Anonymous voting

Что произойдет при запуске следующего кода?
Что произойдет при запуске следующего кода?

🔍 Ответ на задачу про исключения в Java Давайте разберемся, что произойдет при выполнении представленного кода! ⬇️
public class ExceptionTest {
    public static void main(String[] args) {
        try {
            System.out.println("A");
            int result = 10 / 0; // Здесь возникнет ArithmeticException
            System.out.println("B"); // Эта строка не будет выполнена
        } catch (ArithmeticException e) {
            System.out.println("C");
        } finally {
            System.out.println("D");
        }
        System.out.println("E");
    }
}
Рассмотрим выполнение программы по шагам: "A" будет напечатано, так как это первое действие в блоке try. Далее происходит деление на ноль (10 / 0), что вызывает ArithmeticException. Блок catch перехватывает исключение, и "C" выводится на экран. Блок finally выполняется всегда, независимо от того, поймано ли исключение, таким образом, "D" будет напечатано. После выполнения всех блоков try-catch-finally программа продолжает выполнение, поэтому "E" также будет напечатано. Итак, правильная последовательность вывода: A, C, D, E. 🎉 Не забудьте поставить лайк, подписаться на наш канал и оставляйте комментарии! 💬👉 #Java #Исключения #ОбработкаИсключений #java_interview_tasks

1️⃣0️⃣Мир, созданный из единиц и нулей! ❓Знаете ли вы, что первый в мире программист – женщина? Ее звали Ада Лавлейс, и она написала алгоритм для аналитической машины Чарльза Бэббиджа, которую так и не построили при ее жизни. Ада предвидела, что компьютеры смогут не только вычислять числа, но и создавать музыку и графику. Сейчас же они делают то, что в то время считалось невозможным. Более 50% организаций столкнутся с необходимостью цифровой трансформации, а готовы ли вы? 📌Чтобы сэкономить ваше время и получить максимум пользы, собрали папку с каналами, в которой вам расскажут об искусственном интеллекте, VR, метавселенной, разработке, технологиях и людях. 📎Вот ссылка https://t.me/addlist/ONnG1ktOhhYwZjQy Никакой воды, только концентрат полезной информации