Сколько элементов будет пропущено, если Iterator.next() будет вызван после 10-ти вызовов Iterator.hasNext()?
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
❤1🎉1
Ответ на "Сколько элементов будет пропущено, если Iterator.next() будет вызван после 10-ти вызовов Iterator.hasNext()?"
Нисколько -
#вопросы_с_собеседований
Нисколько -
hasNext()
осуществляет только проверку наличия следующего элемента.#вопросы_с_собеседований
📕Открытый урок по Scala для Java, C#, Kotlin и Android программистов, аналитиков данных и специалистов по обработке больших данных
На открытом уроке 4 декабря в 20:00 мск мы изучим, функциональные стримы в Scala на примере fs2.
📗На уроке:
- Рассмотрим, что такое стримы и их разновидности;
- Изучим конструкторы и комбинаторы fs2;
- Проанализируем примеры использования стримов для обработки данных без загрузки в память.
📘В результате:
- Поймете, что такое стримы и как они отличаются от коллекций;
- Как использовать конструкторы и комбинаторы fs2 для обработки данных;
- Получите примеры применения стримов в реальных задачах, что позволит оптимизировать обработку данных.
Спикер Валентин Шилин — senior программист/аналитик данных Deutsche Telekom IT GmbH, 15+ лет программирования на С++, С#, JavaScript, Python, Scala, Java и эксперт в обработке больших данных с помощью Scala/Spark и Hadoop Cloudera.
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/BNBF/
📙 Все участники открытого урока получат скидку на курс "Scala-разработчик"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На открытом уроке 4 декабря в 20:00 мск мы изучим, функциональные стримы в Scala на примере fs2.
📗На уроке:
- Рассмотрим, что такое стримы и их разновидности;
- Изучим конструкторы и комбинаторы fs2;
- Проанализируем примеры использования стримов для обработки данных без загрузки в память.
📘В результате:
- Поймете, что такое стримы и как они отличаются от коллекций;
- Как использовать конструкторы и комбинаторы fs2 для обработки данных;
- Получите примеры применения стримов в реальных задачах, что позволит оптимизировать обработку данных.
Спикер Валентин Шилин — senior программист/аналитик данных Deutsche Telekom IT GmbH, 15+ лет программирования на С++, С#, JavaScript, Python, Scala, Java и эксперт в обработке больших данных с помощью Scala/Spark и Hadoop Cloudera.
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/BNBF/
📙 Все участники открытого урока получат скидку на курс "Scala-разработчик"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Чем отличаются операторы & и &&, | и ||?
Anonymous Quiz
12%
Операторов & и | в Java нет
34%
& и | - унарные операторы, а && и || - бинарные
47%
& и | всегда проверяют оба операнда на истинность, а && и || - не всегда
7%
Узнать ответ
Пояснение к предыдущему вопросу👆
👨🏻💻 Операторы & и |применяются как побитовое «И» и «ИЛИ» соответственно, если операнды целочисленные, и как логические «И» и «ИЛИ», если операнды булевы. При этом & и |, в случае логического выражения, проверяют оба своих операнда на истинность.
Их сокращенные версии, &&и ||, оптимизированы – «И» не проверяет на истинность второй операнд, если первый «ЛОЖЬ», «ИЛИ» не проверяет второй операнд, если первый «ИСТИНА».
Это делает их полезными для оптимизации кода и позволяет избежать NullPointerExceptionв тех случаях, когда второй операнд-выражение может его инициировать (в первом операнде размещают проверку на null-значение).
👨🏻💻 Операторы & и |применяются как побитовое «И» и «ИЛИ» соответственно, если операнды целочисленные, и как логические «И» и «ИЛИ», если операнды булевы. При этом & и |, в случае логического выражения, проверяют оба своих операнда на истинность.
Их сокращенные версии, &&и ||, оптимизированы – «И» не проверяет на истинность второй операнд, если первый «ЛОЖЬ», «ИЛИ» не проверяет второй операнд, если первый «ИСТИНА».
Это делает их полезными для оптимизации кода и позволяет избежать NullPointerExceptionв тех случаях, когда второй операнд-выражение может его инициировать (в первом операнде размещают проверку на null-значение).
😁1
Как одним вызовом из List получить List со всеми элементами, кроме первых и последних 3-х?
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
❤1
Ответ на "Как одним вызовом из List получить List со всеми элементами, кроме первых и последних 3-х?"
List<Integer> subList = list.subList(3, list.size() - 3);
#вопросы_с_собеседований🔥6
Что такое «fail-fast поведение»?
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
❤1
Ответ на "Что такое «fail-fast поведение»?"
В Java Collections API некоторые итераторы ведут себя как fail-fast и выбрасывают
Реализация такого поведения осуществляется за счет подсчета количества модификаций коллекции (
• при изменении коллекции счетчик модификаций так же изменяется;
• при создании итератора ему передается текущее значение счетчика;
• при каждом обращении к итератору сохраненное значение счетчика сравнивается с текущим, и, если они не совпадают, возникает исключение.
#вопросы_с_собеседований
fail-fast
поведение означает, что при возникновении ошибки или состояния, которое может привести к ошибке, система немедленно прекращает дальнейшую работу и уведомляет об этом. Использование fail-fast
подхода позволяет избежать недетерминированного поведения программы в течение времени.В Java Collections API некоторые итераторы ведут себя как fail-fast и выбрасывают
ConcurrentModificationException
, если после его создания была произведена модификация коллекции, т.е. добавлен или удален элемент напрямую из коллекции, а не используя методы итератора.Реализация такого поведения осуществляется за счет подсчета количества модификаций коллекции (
modification count
):• при изменении коллекции счетчик модификаций так же изменяется;
• при создании итератора ему передается текущее значение счетчика;
• при каждом обращении к итератору сохраненное значение счетчика сравнивается с текущим, и, если они не совпадают, возникает исключение.
#вопросы_с_собеседований
📕Открытый урок по Scala для Java, C#, Kotlin и Android программистов, аналитиков данных и специалистов по обработке больших данных
На открытом уроке 16 декабря в 20:00 мск мы изучим, эффекты в Scala.
📗На уроке:
- узнаем, что такое эффекты и какие они бывают;
- познакомимся с понятием функционального эффекта;
- разберемся, какие задачи они могут решать.
📘В результате:
Реализуем свой функциональный эффект, применив полученные навыки.
Спикер Алексей Воронец — руководитель разработки департамента проектных решений и поисковых систем в компании Naumen, 14+ лет разработки на Scala, Java, JavaScript и PHP.
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/WhNw/
📙 Все участники открытого урока получат скидку на курс "Scala-разработчик"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На открытом уроке 16 декабря в 20:00 мск мы изучим, эффекты в Scala.
📗На уроке:
- узнаем, что такое эффекты и какие они бывают;
- познакомимся с понятием функционального эффекта;
- разберемся, какие задачи они могут решать.
📘В результате:
Реализуем свой функциональный эффект, применив полученные навыки.
Спикер Алексей Воронец — руководитель разработки департамента проектных решений и поисковых систем в компании Naumen, 14+ лет разработки на Scala, Java, JavaScript и PHP.
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/WhNw/
📙 Все участники открытого урока получат скидку на курс "Scala-разработчик"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍2❤1🥰1
Чем stub отличается от mock?
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
😁2
Ответ на "Чем stub отличается от mock?"
#вопросы_с_собеседований
stub
используется как заглушка сервисов, методов, классов и т.д. с заранее запрограммированным ответом на вызовы.mock
использует подмену результатов вызова, проверяет сам факт взаимодействия, протоколирует и контролирует его.#вопросы_с_собеседований
Научитесь этому на бесплатном открытом уроке с использованием Resilience4j!
В мире высоких нагрузок и распределенных систем стабильность — это ключ к успеху.
🗓 На уроке 19 декабря в 20:00 мск мы разберем фреймворк Resilience4j и покажем, как повысить отказоустойчивость ваших приложений.
Спикер Сергей Петрелевич — опытный разработчик на Java и Kotlin.
🔗 Регистрируйтесь на вебинар
Все участники вебинара получат скидку на курс «Java Developer. Professional».
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2👎1
Можно ли объявить метод абстрактным и статическим одновременно?
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
👍2
Ответ на "Можно ли объявить метод абстрактным и статическим одновременно?"
Нет. В таком случае компилятор выдаст ошибку:
#вопросы_с_собеседований
Нет. В таком случае компилятор выдаст ошибку:
"Illegal combination of modifiers: ‘abstract’ and ‘static’"
. Модификатор abstract
говорит, что метод будет реализован в другом классе, а static
наоборот указывает, что этот метод будет доступен по имени класса.#вопросы_с_собеседований
😢2🎉2👍1
Шпаргалка. Все базовые, необходимые паттерны проектирования на Java в одном посте.
👩💻 Реализация паттернов проектирования на Java
🕯 Паттерн Decorator (Декоратор)
🕯 Паттерн Observer (Наблюдатель)
🕯 Паттерн Посетитель (Visitor)
🕯 Паттерн Factory Method (Фабричный метод)
🕯 Паттерн Proxy (Прокси)
🕯 Паттерн Command (Команда)
🔍 Что такое MVC?
👉 Java Rocks | #паттерны | пошарьте друзьям этот пост если считаете его полезным. 👍
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Начинаем работать. Скоро будет много новых постов. Предлагайте темы, которые стоит разобрать.
👍5
В чем разница между HashMap и WeakHashMap? Для чего используется WeakHashMap?
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
👍1
Ответ на "В чем разница между HashMap и WeakHashMap? Для чего используется WeakHashMap?"
В
В качестве примера использования такой структуры данных можно привести следующую ситуацию: допустим имеются объекты, которые необходимо расширить дополнительной информацией, при этом изменение класса этих объектов нежелательно либо невозможно. В этом случае добавляем каждый объект в
#вопросы_с_собеседований
В
Java
существует 4 типа ссылок: сильные (strong reference)
, мягкие (SoftReference)
, слабые (WeakReference)
и фантомные (PhantomReference)
. Особенности каждого типа ссылок связаны с работой Garbage Collector
. Если объект можно достичь только с помощью цепочки WeakReference
(то есть на него отсутствуют сильные и мягкие ссылки), то данный объект будет помечен на удаление.WeakHashMap
- это структура данных, реализующая интерфейс Map
и основанная на использовании WeakReference
для хранения ключей. Таким образом, пара «ключ-значение»
будет удалена из WeakHashMap
, если на объект-ключ более не имеется сильных ссылок.В качестве примера использования такой структуры данных можно привести следующую ситуацию: допустим имеются объекты, которые необходимо расширить дополнительной информацией, при этом изменение класса этих объектов нежелательно либо невозможно. В этом случае добавляем каждый объект в
WeakHashMap
в качестве ключа, а в качестве значения - нужную информацию. Таким образом, пока на объект имеется сильная ссылка (либо мягкая), можно проверять хэш-таблицу и извлекать информацию. Как только объект будет удален, то WeakReference
для этого ключа будет помещен в ReferenceQueue
и затем соответствующая запись для этой слабой ссылки будет удалена из WeakHashMap
.#вопросы_с_собеседований
👍3❤1
Почему Map не наследуется от Collection?
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
Пишите в комментариях ваш вариант. Ответ будет у нас в канале.
#вопросы_с_собеседований
👍2