Java Interview Tasks
Ir al canal en Telegram
Реальные вопросы и задачи с собеседований. Оригинальный авторский контент. Актуальный материал. Уровень вопросов от junior до supersenior. Автор канала - @alexzelentsov По рекламе: @alexzelentsov и https://telega.in/c/java_interview_tasks
Mostrar más4 521
Suscriptores
-124 horas
-107 días
-2330 días
Archivo de publicaciones
4 521
Если машина проехала весь путь в одну сторону со скоростью 40 км/ч, а обратно - со скоростью 60 км/ч, какова была её средняя скорость?
4 521
#реклама Ваш конкурент уже использует ИИ не так, как пишут в блогах. И вот почему вы этого не видите.
Каждый день выходит сотня статей: «10 нейросетей, которые изменят всё». Вы пробуете ChatGPT, Midjourney, но результат — как у всех. Милые картинки и шаблонные тексты. Где же прорывная эффективность? Где то самое конкурентное преимущество?
Секрет в том, что по-настоящему крутые кейсы и инсайты рождаются не в публичном поле, а в закрытых коммьюнити и чатах практиков. Пока мы читаем новости о вчерашнем дне, они: Уже тестируют свежие, нераскрученные модели с открытым весом. Делятся промтами, которые дают на 80% более качественный результат. Спорят о том, какой стек технологий умрет через год, а какой — взорвет рынок. Находят подводные камни в API новых моделей, экономя своим компаниям тысячи долларов.
Я устал рыскать по всему интернету и собрал их всех в одну папку.
Подписка на эту папку — это как иметь личный канал в Slack с лучшими умами в области ИИ.
Это не про «какую нейросеть выбрать для картинок». Это про то, как сделать ИИ вашим реальным инструментом для роста, а не игрушкой.
Если готовы? Подписывайтесь здесь
4 521
🔍 Ответ на задачу про 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
4 521
Ответ к вопросу про поиск элемента в коллекции по значению:
В случае обеих предложенных реализаций нужно будет последовательно перебрать все элементы в коллекции. Поэтому сложность будет О(n) и для случая linked list и для array list. В данном варианте разницы с точки зрения сложности поиска нет.
4 521
Нужно найти элемент в коллекции по значению, какую реализацию лучше выбрать с точки зрения асимптотической сложности?
4 521
#реклама
🔥 ВЗРЫВНОЙ РОСТ ДОХОДА С ПОМОЩЬЮ ИИ и IT-технологий!
В папке «AI & TECH IT» собрали ВСЮ информацию для заработка на нейросетях и в сфере технологий!
Уже 1000+ человек автоматизировали рутину и начали зарабатывать. Там тебя ждут:
✦ Beauty-салон, где заявки обрабатывает нейросеть
✦ В честь дня рождения «Лаборатории Нейросетей» БОЛЬШОЙ розыгрыш
Подпишись и уничтожь конкурентов с мощью этих каналов: https://t.me/addlist/ai&tech&it
4 521
#реклама
Я до сих пор ловлю себя на мысли: как мы вообще раньше без этого жили? 🤯
Кажется, ещё вчера ИИ был где-то далеко — в научных статьях и голливудских фильмах. А сегодня он уже:
- Пишет за меня продающие тексты, с которыми не справился бы копирайтер;
- Анализирует данные и находит клиентов, которые готовы купить прямо сейчас;
- Генерирует идеи, от которых мурашки по коже — как я сам до этого не додумался?
Самое странное — что это работает уже сегодня. Не через 5 лет. Не в теории. Прямо сейчас.
Но меняться страшно. Сложно. Непонятно, с чего начать.
Поэтому для вас собрал папку с материалами от людей, которые уже прошли этот путь. Не теоретики — а практики, которые внедрили ИИ в реальные проекты. 🧠
Внутри:
- Кейсы с цифрами: «До/После» внедрения ИИ; - Шаблоны запросов, которые дают результат с первого раза; - Стратегии, которые не найти в открытом доступе.Это не «очередной набор файлов». Это выглядит как шпаргалка из будущего, которое уже наступило. Хотите заглянуть? 👇 Все здесь
4 521
🔍 Ответ на задачу про исключение в стримах 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_tasks4 521
#реклама
Секретное оружие против ИИ-шума 🔥🔥🔥
Вы ведь тоже устали от тонн бесполезности в ленте?
Я с коллегами собрал свой лист экспертов в одну папку
Только те, кто:
→ Копает глубже хайтек-новостей,
→ Делится кодом/архитектурами,
→ Бьет в точку.
Просто твой личный фильтр
Подруби себе: все здесь
P.S. Я тоже там есть😁
4 521
🔍 Завтра тестовое собеседование с Java-разработчиком
20 августа(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика.
Как это будет:
📂 Сергей Чамкин, старший разработчик из Uzum, ex-WildBerries, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Cергей будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Сергею
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot
Реклама.
О рекламодателе.
4 521
🔍 Ответ на задачу про работу с многопоточностью в 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_tasks4 521
🔍 Ответ на задачу про исключения в 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_tasks4 521
1️⃣0️⃣Мир, созданный из единиц и нулей!
❓Знаете ли вы, что первый в мире программист – женщина? Ее звали Ада Лавлейс, и она написала алгоритм для аналитической машины Чарльза Бэббиджа, которую так и не построили при ее жизни.
Ада предвидела, что компьютеры смогут не только вычислять числа, но и создавать музыку и графику. Сейчас же они делают то, что в то время считалось невозможным. Более 50% организаций столкнутся с необходимостью цифровой трансформации, а готовы ли вы?
📌Чтобы сэкономить ваше время и получить максимум пользы, собрали папку с каналами, в которой вам расскажут об искусственном интеллекте, VR, метавселенной, разработке, технологиях и людях.
📎Вот ссылка
https://t.me/addlist/ONnG1ktOhhYwZjQy
Никакой воды, только концентрат полезной информации
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
