Java Interview Tasks
前往频道在 Telegram
Реальные вопросы и задачи с собеседований. Оригинальный авторский контент. Актуальный материал. Уровень вопросов от junior до supersenior. Автор канала - @alexzelentsov По рекламе: @alexzelentsov
显示更多4 903
订阅者
无数据24 小时
+807 天
+18630 天
帖子存档
4 900
😊 Ламповое комьюнити про ИТ, ИИ и digital
Наш канал вошел в подборку тг-каналов про ИТ, диджитал и Tech — это ламповое комьюнити для своих, где собраны люди из индустрии, кейсы, инструменты и полезные наблюдения.
В папке — каналы про:
➕новые инструменты, реальные кейсы и применение в работе
➕тренды, обзоры и взгляд tech-практиков
➕карьера и развитие в tech
➕поиск рабочих подходов и инструментов для ежедневных задач
🔠 Тык на папку https://t.me/addlist/Jyt5789h67djMDBi
4 900
🔍 Ответ на задачу про Text Blocks: Считаем пробелы 📏
Текстовые блоки используют "алгоритм смещения" (incidental whitespace). Java находит самую левую границу текста во всем блоке (в данном случае это начало слова "World") и считает её за "ноль". Всё, что находится левее этой границы, отбрасывается.
Вывод:
Так как "Hello" смещено на 2 пробела относительно "World", в итоговой строке перед ним останется именно 2 пробела.
⚡️ Не перепутайте:
Положение закрывающих кавычек
""" тоже влияет на отступы! Если вы сдвинете их левее текста, это создаст дополнительные пробелы.
#java #java15 #textblocks #syntax #basics #интервью #java_interview_tasks4 900
Как текстовые блоки (Java 15+) определяют, где начинается контент, а где — просто отступы кода?
Сколько пробелов будет перед словом "Hello" в строке
result?
String result = """
Hello
World
""";4 900
Как текстовые блоки \(Java 15\+\) определяют, где начинается контент, а где — просто отступы кода?
Сколько пробелов будет перед словом "Hello" в строке `result`?
4 900
Ответ на задачу про 3200021:
Заметим, что 32 · 100 000 = 3 200 000 = 20⁵ (потому что 32 = 2⁵, 100 000 = 10⁵, а 2⁵ · 10⁵ = 20⁵).
Тогда 3 200 021 = 20⁵ + 20 + 1, то есть это выражение x⁵ + x + 1 при x = 20.
Есть известное разложение:
x⁵ + x + 1 = (x² + x + 1)(x³ − x² + 1)
Подставляем x = 20:
x² + x + 1 = 400 + 20 + 1 = 421
x³ − x² + 1 = 8000 − 400 + 1 = 7601
7601 = 7700 − 99
7700 = 77 · 100 = 11 · 700
99 = 11 · 9
Значит, 7601 = 11 · (700 − 9) = 11 · 691.
Итого: 3 200 021 = 11 · 421 · 691.
4 900
🔍 Ответ на задачу про Pattern Matching: Прощай, кастинг! 👋
В Java 16 появился Pattern Matching for instanceof. Теперь мы можем объявить переменную
s прямо в проверке. Если obj является строкой, Java сама сделает приведение типов и запишет результат в s. Область видимости s ограничена блоком if.
Вывод:
Так как длина строки 10 (> 5), условие сработает. Результат: HELLO JAVA.
⚡️ Не перепутайте:
Переменная s доступна только там, где компилятор уверен в её инициализации. Например, в if (...) { здесь s доступна }.
#java #java16 #patternmatching #basics #syntax #интервью #java_interview_tasks4 900
Что выведет этот код?
Object obj = "Hello Java";
if (obj instanceof String s && s.length() > 5) {
System.out.print(s.toUpperCase());
} else {
System.out.print("Short or not a string");
}4 900
Если вы работаете в сфере IT, развиваетесь в технологиях или просто хотите быть в курсе самых важных новостей и трендов - эта папка для вас!
Что внутри:
▪️ IT-новости и главные события технологического мира
▪️ Полезные сервисы и инструменты для работы
▪️ Полезные материалы, которые можно сразу применять в работе
А также в папке есть Чат-нетворкинг: "ЗАЯВИ О СЕБЕ", где вы можете разместить информацию о себе, своих услугах, кейсах и оставить свои контакты.
🔥 Изучайте, подписывайтесь на интересные каналы и забирайте полезные знания, собранные в одной папке!
Жми на ссылку и присоединяйся: 👇
https://t.me/addlist/pOCltuM_vVk3NWI8
ЗАПИСАТЬ СВОЙ КАНАЛ В ПАПКУ
4 900
📂 Подборка каналов по AI, IT технологиям & HR Tech
Мы собрали полезные каналы для тех, кто работает в IT сфере, интересуется AI и хочет расширить свой кругозор без необходимости мониторить сотни источников самому, а также сделать качественный АПГРЕЙД своей новостной Ленты.
Что внутри:
– AI: реальные инструменты и внедрения, без хайпа; – IT технологии: тренды, обзоры, инсайты от первых лиц; – Карьера: как расти и не выгорать; – HR Tech: кто и как нанимает профессионалов сейчас; – AI life hacks: применение ИИ для тех, кто находиться за границей и ищет там удаленную работу.🔗 [ Добавить подборку ] * Сделай свою подписку умнее, пока другие читают вчерашние новости 📩 Записаться в папку
4 900
🔍 Ответ на задачу про Switch Expressions: yield или return? 🔄
В новых switch expressions (Java 14+) если вам нужно выполнить несколько действий в одном
case, вы используете блок {}. Чтобы вернуть значение из такого блока наружу в переменную, используется ключевое слово yield.
Вывод:
Сначала выполнится System.out.print, затем значение "Result" вернется в переменную. Итого: OneResult.
⚡️ Не перепутайте:
yield используется только внутри switch. Не пытайтесь использовать его вместо return в обычных методах.
#java #switch #java14 #basics #syntax #интервью #java_interview_tasks4 900
Как быть в тренде и не отставать от новинок в AI, IT & HR Tech ?! Собрали для вас всё в одной Ленте по формуле ALL IN ONE
Нейросети регулярно обновляются, а мониторить каналы постоянно поштучно долго. Свежие инструменты, обновления и материалы удобнее держать в одной подборке. Такие каналы уже собраны для вас в [папке].
Что внутри:
AI-блок: новости, нейросети, ИИ-инструменты и кейсы внедрения, стартапы, датасеты
Dev-блок: Java, Python, JS (Frontend/Backend), Mobile, QA, промышленная автоматизация (IIoT)
Отдельно: Cybersecurity, SciPop, IT-вакансии, биржа фриланса, бизнес-новости, Agile/PMP-менеджмент
Бонус: IT-мемы и юмор
Посмотреть и подписаться можно здесь: ➡️ https://t.me/addlist/l4nIMn_TWsQwZWNk
📩 Запись в папку
4 900
Что выведет код?
int x = 1;
String result = switch (x) {
case 1 -> {
System.out.print("One");
yield "Result";
}
default -> "Other";
};
System.out.print(result);4 900
⚡️ Здравствуйте, Дорогие подписчики!
Представляем вашему вниманию подборку полезных каналов в сфере «Образование и наука» 🔥
Будем очень рады, если вы найдете для себя что-нибудь полезное.
❗️Ссылка на папку:
https://t.me/addlist/RRUkxNEKX7UwZWRi
4 900
🔍 Ответ на задачу про Sealed Classes: Закрытая иерархия 🔒
Ключевое слово
sealed (Java 17) разрешает наследование только тем классам, которые перечислены в списке permits. Любой другой класс (как Triangle) получит ошибку компиляции при попытке расширить Shape.
Наследники sealed класса обязаны быть либо final, либо sealed, либо non-sealed (открывающим иерархию обратно).
Вывод:
Triangle нет в списке разрешенных. Поэтому вариант с Triangle не скомпилируется.
⚡️ Не перепутайте:
Sealed-классы отлично работают вместе с Pattern Matching в switch, позволяя компилятору проверять, все ли возможные подтипы вы обработали.
#java #java17 #sealedclasses #oop #basics #интервью #java_interview_tasks4 900
Какой класс НЕ сможет наследоваться от
Shape?
sealed class Shape permits Circle, Square { }
final class Circle extends Shape { }
non-sealed class Square extends Shape { }
class Triangle extends Shape { }4 900
🔍 Ответ на задачу про Records: Компактный конструктор 📝
В рекордах (Java 16+) есть "компактный конструктор". У него нет круглых скобок с параметрами. Он автоматически получает те же параметры, что объявлены в заголовке рекорда. Это идеальное место для валидации или нормализации данных (например,
name = name.trim()).
Вывод:
Код скомпилируется и выбросит исключение. Это правильный способ гарантировать валидность данных в Immutable записях.
⚡️ Не перепутайте:
В компактном конструкторе не нужно писать this.name = name, Java сделает это сама в конце.
#java #records #java17 #clean_code #basics #интервью #java_interview_tasks