Java Interview Tasks
3.89K subscribers
185 photos
1 file
121 links
Реальные вопросы и задачи с собеседований.
Оригинальный авторский контент.
Актуальный материал.
Уровень вопросов от junior до supersenior.

Автор канала - @alexzelentsov

По рекламе: @alexzelentsov и https://telega.in/c/java_interview_tasks
Download Telegram
Какие потоки будут создаваться быстрее?
👍3🔥2🐳2
🔥7🐳3👍1
Результат получился ожидаемый. Виртуальные потоки создаются быстрее обычных как и ожидается.
👍11🔥32🐳1
Где будет исполнен метод doInternal?
👍5🔥4
Какие есть недостатки в этом коде?
🔥72🐳2👏1
Что напечатает код, если index = -1? (Разъяснение ответа будет завтра)
🔥71
👍9👎6🤔2
Тут проблема в приоритете операций, код выше эквивалентен такому:
if ((index >= 0 && s.charAt(index) == 'q') || s.charAt(index) == '\t')
Поэтому правильный вариант будет - StringIndexOutOfBoundsException, так как код дойдет до выполнения s.charAt(index) и упадет на нем
👍62🔥2
Правильный код мог бы быть такой
👍5🔥4
Так же есть идея разделять сложные условия на отдельные if else блоки, что улучшает читаемость кода
👍7🔥6
Что вернет метод, если ret1 = 10, ret2 = 30, retStep = 2?
(Ответ будет завтра.)
(Этот код не является примером хорошего продакшен кода. Скорее наоборот.)
🔥8👍21
Что вернет метод, если ret1 = 10, ret2 = 30, retStep = 2?
Anonymous Quiz
3%
10
25%
1
64%
100
6%
runtime exception
2%
узнать ответ
👍18👎8😐1
Ответ к задаче про порядок действий * и /:
Правильный ответ = 100, так как код в методе test9 эквивалентен такому:
((ret2 - ret1) / retStep) * 10
👍8🔥3
Несколько вариантов как можно улучшить код из прошлого вопроса.
1) просто 10 перенести вперед и неоднозначность с порядком действий уйдет.
2) Вынести часть действий в новую переменную. Часто этой переменной еще можно будет дать удачное название, которое будет понятно в вашей доменной модели.
👍8🔥7
Чему будет равно isVersionSupported?
🔥8👍2
Чему будет равно isVersionSupported?
Anonymous Quiz
48%
true
20%
false
22%
compile error
10%
узнать ответ
🔥94🐳1
Ответ к вопросу про сравнение с массивом: В данном случае, метод isIn принимает массив, а не список, поэтому Objects.equals будет сравнивать String со списком как с объектом, что приведет к false. Основное правило, которое надо соблюдать, это не передавать в метод с vararg параметром коллекцию.
👍12🔥4🐳1
Objects.equals(c, element) в дебаге будет такой:
👍13🔥3🐳2
Какое минимальное значение Int?
Anonymous Quiz
28%
-2^31
17%
-2^31 - 1
26%
-2^32
22%
-2^32 - 1
7%
узнать ответ
🔥11🤮4👍2🐳2
Минимальное значение = -2^31.
В Java для типа int выделено 4 байта памяти. Каждый байт памяти состоит из 8 битов. Каждый бит может принимать только 2 значения — 0 или 1. Переменная типа int содержит 32 бита и может принимать 4,294,967,296 значений. (2^32)
Половину этого диапазона отдали под отрицательные числа, а вторую — под положительные и еще надо разместить «0». Вот и получилось от -2,147,483,648 (-2^31) до 2,147,483,647 (2^31 -1).
👍17🔥2🐳2