Что такое тернарный оператор выбора?
Тернарный условный оператор ?: - оператор, которым можно заменить некоторые конструкции операторов if-then-else.
Выражение записывается в следующей форме:
Тернарный условный оператор ?: - оператор, которым можно заменить некоторые конструкции операторов if-then-else.
Выражение записывается в следующей форме:
условие ? выражение1 : выражение2
Если условие выполняется, то вычисляется выражение1 и его результат становится результатом выполнения всего оператора. Если же условие равно false, то вычисляется выражение2 и его значение становится результатом работы оператора. Оба операнда выражение1 и выражение2 должны возвращать значение одинакового (или совместимого) типа.Экспортируем метрики в Prometheus, пишем кастомные метрики с помощью Micrometr, строим дашборды в Grafana. Поднимаем это все с помощью Docker compose.
https://youtu.be/CexiiWrZESk
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Мониторинг Spring Boot, Prometheus и Grafana(Docker compose)
Экспортируем метрики в Prometheus, пишем кастомные метрики с помощью Micrometr, строим дашборды в Grafana. Поднимаем это все с помощью Docker compose.
Repo GitHub - https://github.com/kegisa/YandexTaxiScheduler
Api Yandex Taxi - https://yandex.ru/dev/taxi/taxiapi/…
Repo GitHub - https://github.com/kegisa/YandexTaxiScheduler
Api Yandex Taxi - https://yandex.ru/dev/taxi/taxiapi/…
Руководство по обработке исключений в Java Stream
Друзья, вашему вниманию предлагается небольшое руководство по обработке исключений в Java Stream, из которого вы узнаете: 😃
✔️ Как обрабатывать проверяемые исключения, выбрасываемые методами из промежуточных операций в стримах
✔️ Как использовать блок try-catch в лямбда-выражениях
✔️ Как безопасно извлекать метод.
Также, даны рекомендации использовать Optional вместо выбрасывания значения null из извлекаемой функции.
Хорошей практики!
https://howtodoinjava.com/java/stream/handle-exceptions-in-stream/
Друзья, вашему вниманию предлагается небольшое руководство по обработке исключений в Java Stream, из которого вы узнаете: 😃
✔️ Как обрабатывать проверяемые исключения, выбрасываемые методами из промежуточных операций в стримах
✔️ Как использовать блок try-catch в лямбда-выражениях
✔️ Как безопасно извлекать метод.
Также, даны рекомендации использовать Optional вместо выбрасывания значения null из извлекаемой функции.
Хорошей практики!
https://howtodoinjava.com/java/stream/handle-exceptions-in-stream/
HowToDoInJava
Handle Exceptions Thrown in Java Streams - HowToDoInJava
Learn to handle the checked exceptions thrown from the methods used in Stream operations in Java 8 using safe method extraction and Optional.
#вопросы_с_собеседований
Как и когда происходит увеличение количества корзин в HashMap?
Помимо
Как и когда происходит увеличение количества корзин в HashMap?
Помимо
capacity
у HashMap
есть еще поле loadFactor
, на основании которого, вычисляется предельное количество занятых корзин capacity * loadFactor
. По умолчанию loadFactor = 0.75
. По достижению предельного значения, число корзин увеличивается в 2 раза и для всех хранимых элементов вычисляется новое «местоположение» с учетом нового числа корзин.#вопросы_с_собеседований
Сделайте HashMap из HashSet<Map.Entry<K, V>>.
Сделайте HashMap из HashSet<Map.Entry<K, V>>.
HashMap<K, V> map = new HashMap<>(set.size());
for (Map.Entry<K, V> entry : set) {
map.put(entry.getKey(), entry.getValue());
}
#вопросы_с_собеседований
Сделайте HashSet из ключей HashMap.
Сделайте HashSet из ключей HashMap.
HashSet<Object> set = new HashSet<>(map.keySet());
#вопросы_с_собеседований
Для чего в стримах предназначены методы flatMap(), flatMapToInt(), flatMapToDouble(), flatMapToLong()?
Метод flatMap() похож на map, но может создавать из одного элемента несколько. Таким образом, каждый объект будет преобразован в ноль, один или несколько других объектов, поддерживаемых потоком. Наиболее очевидный способ применения этой операции — преобразование элементов контейнера при помощи функций, которые возвращают контейнеры.
flatMapToInt(), flatMapToDouble(), flatMapToLong() - это аналоги flatMap(), возвращающие соответствующий числовой стрим.
Для чего в стримах предназначены методы flatMap(), flatMapToInt(), flatMapToDouble(), flatMapToLong()?
Метод flatMap() похож на map, но может создавать из одного элемента несколько. Таким образом, каждый объект будет преобразован в ноль, один или несколько других объектов, поддерживаемых потоком. Наиболее очевидный способ применения этой операции — преобразование элементов контейнера при помощи функций, которые возвращают контейнеры.
flatMapToInt(), flatMapToDouble(), flatMapToLong() - это аналоги flatMap(), возвращающие соответствующий числовой стрим.
Автор показывает, как генерировать FeignClient по swagger openapi. Часто используется в реализации микросервисов на Spring Boot.
https://youtu.be/O2CrSdhS7pM
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Генерация Spring FeignClient по Swagger openapi
Показываю как генерировать FeignClient по swagger openapi. Часто используется в реализации микросервисов на Spring Boot.
Сервис валют - https://github.com/kegisa/CurrencyCbrService
Пример проекта со SwaggerCodeGen - https://github.com/kegisa/GeneratingFeignBySwagger…
Сервис валют - https://github.com/kegisa/CurrencyCbrService
Пример проекта со SwaggerCodeGen - https://github.com/kegisa/GeneratingFeignBySwagger…
Spring: новости за прошедшую неделю / 28-е февраля
Вашему вниманию предлагается информационная подборка материалов "Spring: новости за прошедшую неделю" от Джоша Лонга (Josh Long).
Приятного чтения! 😃
Читать статью
Вашему вниманию предлагается информационная подборка материалов "Spring: новости за прошедшую неделю" от Джоша Лонга (Josh Long).
Приятного чтения! 😃
Читать статью
This Week in Spring - February 28th, 2023
Level up your Java code and explore what Spring can do for you.
Шестнадцатеричный формат
Иногда нам нужно преобразовать строки в шестнадцатеричный формат, байты или символы. Начиная с Java 17 вы можете использовать класс HexFormat. Просто создайте экземпляр HexFormat, а затем вы можете отформатировать, например, входную таблицу byte в шестнадцатеричную строку. Вы также можете, например, преобразовать входную шестнадцатеричную строку в таблицу байтов, как показано выше.
Иногда нам нужно преобразовать строки в шестнадцатеричный формат, байты или символы. Начиная с Java 17 вы можете использовать класс HexFormat. Просто создайте экземпляр HexFormat, а затем вы можете отформатировать, например, входную таблицу byte в шестнадцатеричную строку. Вы также можете, например, преобразовать входную шестнадцатеричную строку в таблицу байтов, как показано выше.
Целью проекта Leyden является сокращение времени запуска программ, сокращение времени достижения пиковой производительности, а также сокращение занимаемой памяти Java программ.
Руководитель проекта Марк Рейнхольд недавно предложил расширить программную модель Java функциями для выборочного сдвига и ограничения вычислений с помощью "конденсоров" (condensor).
В предложенном сегодня видео Николай Парлог расскажет о будущем этого проекта.
Приятного просмотра!
https://youtu.be/QPWFjNroHls
Руководитель проекта Марк Рейнхольд недавно предложил расширить программную модель Java функциями для выборочного сдвига и ограничения вычислений с помощью "конденсоров" (condensor).
В предложенном сегодня видео Николай Парлог расскажет о будущем этого проекта.
Приятного просмотра!
https://youtu.be/QPWFjNroHls
YouTube
The Holy Grail of Java Performance - Inside Java Newscast #43
The goal of Project Leyden is to improve the startup time, time to peak performance, and footprint of Java programs. Project lead Mark Reinhold recently proposed to extend the Java programming model with features for selectively shifting and constraining…
Новость для багхантеров
Финтех-компания QIWI запустила программу Bug Bounty на платформе tumar.one. Искать уязвимости можно на доменах qiwi.com, qiwi.ru, contact-sys.com и их поддоменах, а также в мобильных приложениях QIWI. За продемонстрированные атаки на найденные уязвимости в основных сервисах компании белые хакеры могут получить денежное вознаграждение вплоть до $5 тыс. С подробными правилами участия можно ознакомиться в описании программы, предварительно пройдя регистрацию на платформе.
Финтех-компания QIWI запустила программу Bug Bounty на платформе tumar.one. Искать уязвимости можно на доменах qiwi.com, qiwi.ru, contact-sys.com и их поддоменах, а также в мобильных приложениях QIWI. За продемонстрированные атаки на найденные уязвимости в основных сервисах компании белые хакеры могут получить денежное вознаграждение вплоть до $5 тыс. С подробными правилами участия можно ознакомиться в описании программы, предварительно пройдя регистрацию на платформе.
Скачиваем видео с Youtube
VGet позволит вам скопировать видео с YouTube, используя только URL-адрес.
Как видите, первая строка кода в блоке try просто указывает URL-адрес YouTube.
В следующей строке указывается путь, по которому вы хотите сохранить загруженный файл.
Далее код создает экземпляр VGet. Это рабочий класс, который будет обрабатывать процесс загрузки.
Наконец, код вызывает download() метод VGet объекта.
Подробнее ознакомиться можно здесь.
VGet позволит вам скопировать видео с YouTube, используя только URL-адрес.
Как видите, первая строка кода в блоке try просто указывает URL-адрес YouTube.
В следующей строке указывается путь, по которому вы хотите сохранить загруженный файл.
Далее код создает экземпляр VGet. Это рабочий класс, который будет обрабатывать процесс загрузки.
Наконец, код вызывает download() метод VGet объекта.
Подробнее ознакомиться можно здесь.
Разбираем необходимый для каждого разработчика минимум знаний и навыков работы с git в консоли. Что такое репозиторий, коммит, ветки и конфликты при их слиянии, как с этим работать — все в одном видео: https://youtu.be/dHlhCO56Pv0
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
GIT ДЛЯ РАЗРАБОТЧИКА. Урок по гиту для начинающих— Обзор системы контроля версий
Вебинар-урок по гиту в рамках курса по Backend - разработке на Java.
Разбираем необходимый для каждого разработчика минимум знаний и навыков работы с git в консоли. Что такое репозиторий, коммит, ветки и конфликты при их слиянии, как с этим работать — все…
Разбираем необходимый для каждого разработчика минимум знаний и навыков работы с git в консоли. Что такое репозиторий, коммит, ветки и конфликты при их слиянии, как с этим работать — все…
Обработка исключений в Java с использованием сопоставления с образцом (pattern matching).
https://habr.com/ru/post/721326/
https://habr.com/ru/post/721326/
Хабр
Обработка исключений в Java с использованием сопоставления с образцом (pattern matching)
Обработка исключений в Java с использованием сопоставления с образцом (pattern matching). Данная статья является логическим продолжением статей Обработка исключений в Java в функциональном стиле и...