uk
Feedback

Не попадись на ботовода! Telemetrio знаходить і позначає такі канали мітками 👉 Хочеш бачити мітку, оформляй підписку 👈

Java Interview Tasks

Java Interview Tasks

Відкрити в Telegram

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

Показати більше
4 896
Підписники
-424 години
Немає даних7 днів
+17030 днів
Архів дописів
Знаете ли вы что такое @IntrinsicCandidate?
Anonymous voting

Может ли метод нахождения модуля целого числа из jdk Math.abs() вернуть отрицательный результат?
Anonymous voting

Может ли метод нахождения модуля целого числа из jdk Math.abs() вернуть отрицательный результат?
Может ли метод нахождения модуля целого числа из jdk Math.abs() вернуть отрицательный результат?

Ответ на задачу про Map.of(): В доках не указана конкретная реализация, сказано следующее: Returns an unmodifiable map … В java 17 реализация из класса ImmutableCollections. Например: ImmutableCollections.EMPTY_MAP, new ImmutableCollections.Map1<>(k1, v1) и тд. Эти мапы эффективнее. Если у вас мапа не будет меняться, то лучше использовать эти реализации.

Что возвращает метод Map.of()?
Anonymous voting

Ответ к задаче про нахождение среднего: 1 вариант будет сильно отличаться от остальных, так как оперирует с лонгами, и там будут переполнения 2 вариант и 3 отличаются между собой из-за разного порядка суммирования в обычном и параллельном стриме Главный вопрос в том, почему отличается вариант 2 от варианта 4: doubleStream использует алгоритм, который делает суммирования таким образом, чтобы погрешность была минимальной, а цикл for суммирует в лоб

Сколько вариантов с одинаковым результатом?
Anonymous voting

Рассмотрим 4 варианта нахождения среднего значения в массиве
Рассмотрим 4 варианта нахождения среднего значения в массиве

Ответ на последнюю задачу - https://t.me/java_interview_tasks/83 Список проблем: 1) дублирование строки “key” 2) map может быть null, нужна проверка 3) если этот код выполняется в многопоточной среде, то можно получить value = null внутри if, если другой поток вызовет map.remove(“key”) между вызовами map.containsKey(“key”) и map.get(“key”) 4) название метода не соответствует логике, лучше назвать, например, printKey Если нашли какие то ещё проблемы, пишите в комментариях

Какие тут есть проблемы ?
Какие тут есть проблемы ?

Outofmemory это ?
Anonymous voting

Ответ к вопросу про суммирование double: Java использует для типа double числа с плавающей запятой. Они не совсем точны. Более простой пример: System.out.println(0.1d + 0.2d); выведет 0.30000000000000004. Если важна точность в расчетах то надо использовать BigDecimal

Может ли напечаться что то кроме 20.2?
Anonymous voting

Может ли напечататься что то кроме 20.2? (Свои варианты и причины пишите в комменты)
Может ли напечататься что то кроме 20.2? (Свои варианты и причины пишите в комменты)

Ответ на вчерашний вопрос: HashSet весит чуть больше так как он реализован через HashMap Детальнее: java.util.HashSet object internals: OFF SZ TYPE DESCRIPTION VALUE 0 8 (object header: mark) N/A 8 4 (object header: class) N/A 12 4 java.util.HashMap HashSet.map N/A Instance size: 16 bytes Видим что hashset содержит поле map java.util.HashMap. То есть вес его = 12 байт headers + reference ( в данном случае 4 (из за compressed oop)) на HashMap + вес hash map java.util.HashMap object internals: OFF SZ TYPE DESCRIPTION VALUE 0 8 (object header: mark) N/A 8 4 (object header: class) N/A 12 4 java.util.Set AbstractMap.keySet N/A 16 4 java.util.Collection AbstractMap.values N/A 20 4 int HashMap.size N/A 24 4 int HashMap.modCount N/A 28 4 int HashMap.threshold N/A 32 4 float HashMap.loadFactor N/A 36 4 java.util.HashMap.Node[] HashMap.table N/A 40 4 java.util.Set HashMap.entrySet N/A 44 4 (object alignment gap) Instance size: 48 bytes

Что весит больше HashMap или HashSet?
Anonymous voting

Ответ на вчерашнюю задачу: тут проблема в том что публикация объекта небезопасна, в jmm есть раздел про публикацию объектов. Спецификация гарантирует безопасную публикацию объекта если его поля, которые инициализируются в конструкторе объявлены final. То есть в данном случае достаточно x1 и x2 объявить как final. (Тогда могут быть вариант -1,-1 и 1,2) Ещё есть нюанс про утечку объекта из конструктора. Про это будет отдельный вопрос позже.

Что может напечатать thread2?
Anonymous voting

Что может напечатать thread2? (thread1 и thread2 запускаются одновременно в разных потоках)
Что может напечатать thread2? (thread1 и thread2 запускаются одновременно в разных потоках)

Какие проблемы Вы видите в этом коде, почему ide подсвечивает warning и как исправить?
Какие проблемы Вы видите в этом коде, почему ide подсвечивает warning и как исправить?