Java Interview Tasks
رفتن به کانال در Telegram
Реальные вопросы и задачи с собеседований. Оригинальный авторский контент. Актуальный материал. Уровень вопросов от junior до supersenior. Автор канала - @alexzelentsov По рекламе: @alexzelentsov и https://telega.in/c/java_interview_tasks
نمایش بیشتر4 521
مشترکین
-324 ساعت
-97 روز
-2730 روز
آرشیو پست ها
4 521
Игральный кубик бросают 3 раза подряд. Какая вероятность того, что выпадет хотя бы одна 6-ка?
4 521
Ответ на вопрос про проблемы в коде копайлота:
Основная проблема тут в том, что Set.of создает Unmodifiable Set, поэтому, когда дойдет до ветки else , там упадет эксепшн при вызове метода add(dt).
4 521
Ответ на вопрос про try-catch-with-resources:
Напечатается "try", так как в случае когда вылетает ексепшн внутри try-catch и при закрытии ресурса, то второй эксепшен добавляется в поле suppressedExceptions в основном эксепшене.
4 521
Что напечатает код? (Внутри try-catch выбрасывается эксепшен, а потом, при закрытии ресурса, вылетает еще один ексепшен)
4 521
Ответ на задачу про ассерт:
Если a равно NaN, то проверка if (a == 0.0) будет ложной, и будет AssertionError();, поскольку NaN не равен ни нулю, ни любому другому числу. В данном коде стоит добавить проверку if(Double.isNaN(a))
4 521
Ответ на задачу про два кубика:
Каждый кубик имеет 6 граней, поэтому общее количество возможных комбинаций при броске двух кубиков: [ 6 * 6 = 36 ] Это означает, что при броске двух кубиков существует 36 возможных разных исходов.
Теперь определим все комбинации двух кубиков, которые в сумме дают 6. Рассмотрим все возможные пары чисел:
(1, 5)
(2, 4)
(3, 3)
(4, 2)
(5, 1)
Итак, у нас есть 5 благоприятных сочетаний, где сумма равна 6.
Вероятность того, что сумма выпавших очков будет равна 6, можно вычислить по формуле: [ P = число благоприятных исходов / общее количество исходов = 5/36 ]
Ответ:
Таким образом, вероятность того, что сумма очков на двух кубиках будет равна 6, составляет 5/36.
4 521
Вы бросаете два кубика. Каждый кубик имеет 6 граней. Какова вероятность того, что сумма выпавших очков будет равна 6?
4 521
Ответ на вопрос про == для строк:
Правильный ответ - true, true
Здесь все строки это ссылки на один и тот же объект в пуле строк, пэтому сравнение == возвращает тру.
Про пул строк:
Когда в коде создается строка через строковый литерал (например,
String s = "Hello";), JVM сначала проверяет пул строк. Если строка с таким же значением уже присутствует в пуле, то новый объект не создается. Вместо этого переменной s присваивается ссылка на уже существующий объект в пуле. Если же такой строки в пуле нет, JVM создает новый объект строки в пуле и возвращает ссылку на него.
Это поведение отличается от создания строк через оператор new (например, String s = new String("Hello");). В этом случае в куче всегда создается новый объект String, независимо от того, содержится ли такая же строка в пуле строк или нет.4 521
Ответ на вопрос про Collectors.toList() vs Stream.toList():
Collectors.toList() возвращает ArrayList и поэтому shuffle отрабатывает корректно, но Stream.toList() всегда возвращает реализацию списка, которая не может быть изменена. И поэтому shuffle упадет с java.lang.UnsupportedOperationException.
Поэтому верный ответ - напечатается «2»
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
