Метод
MethodHandles.insertArguments()
в Java позволяет создавать новый MethodHandle
, в котором заранее фиксируются значения для некоторых аргументов метода. Это полезно для частичного применения аргументов к методам и упрощения их вызова.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
MethodHandles.arrayElementGetter()
позволяет создать MethodHandle
, который получает элементы из массива. Это полезно для работы с массивами через рефлексию.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Метод
Files.copy()
позволяет копировать содержимое файлов или потоков данных.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Метод
Files.probeContentType()
определяет тип содержимого файла (MIME type). Это полезно для работы с различными типами данных в файлах.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Что такое
Optional.empty()
, и как оно помогает избежать null
в Java?Ответ
Пример использования
import java.util.Optional;
public class Main {
public static void main(String[] args) {
Optional<String> optional = Optional.empty();
// Проверка наличия значения
System.out.println(optional.orElse("Значение отсутствует")); // Значение отсутствует
// Работа с методом ifPresent
optional.ifPresent(value -> System.out.println("Значение: " + value));
}
}
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Метод
Stream.flatMapToInt()
используется для преобразования элементов потока в другой поток примитивов int
. Это удобно для обработки вложенных структур данных и работы с примитивами.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Вместо того чтобы использовать явные циклы для поиска элемента в коллекции, Java предоставляет методы для упрощения и оптимизации таких операций, особенно с использованием Stream API.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7😁1
Пояснение
Метод append добавляет " World" в конец строки, а insert вставляет запятую на позицию 5 (после Hello). Результирующая строка: Hello, World. Код выполняется корректно.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
👍4
Метод
Files.isReadable()
из java.nio.file
проверяет, доступен ли файл для чтения. Это полезно для предварительной проверки перед открытием файла.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🗓 8 октября в 20:00 МСК приглашаем на открытый урок OTUS «Как вырастить префиксное дерево». На вебинаре мы пошагово построим префиксное дерево (Trie) для слов из большого текста, добавим счётчики частот и реализуем автодополнение. Вы увидите, как по первым буквам мгновенно находятся все слова с этим префиксом и выводятся самые популярные варианты продолжений.
Урок будет полезен разработчикам, которые хотят глубже понимать работу алгоритмов и применять их для оптимизации поиска, обработки текста и построения быстрых интерфейсов.
Открытый урок проходит в преддверие старта курса «Алгоритмы и структуры данных». Все участники получат скидку на обучение.
👉Зарегистрируйтесь сейчас и узнайте, как вырастить своё первое Trie-дерево: https://otus.pw/pBxd/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
partitioningBy
из класса Collectors
используется для разделения элементов потока на две группы, основываясь на предикате. Он возвращает карту с двумя списками: одна группа удовлетворяет предикату, другая — нет.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍8🔥5
Метод
MethodHandle.invokeExact()
из пакета java.lang.invoke
позволяет вызывать метод или конструктор через ссылку MethodHandle
. Это мощный инструмент для динамического вызова методов с высокой производительностью.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Метод
Stream.generate()
используется для создания бесконечного потока элементов, генерируемых функцией. Это полезно для создания потоков случайных данных, шаблонов или повторяющихся значений.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Метод
MethodHandles.privateLookupIn
позволяет получить доступ к приватным методам, полям и конструкторам класса через MethodHandle
. Это мощный и редкий инструмент для работы с закрытыми членами классов.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
МТС приглашает всех, кто пишет на С++, Go, Python, JS, Java, C# и других языках, на True Tech Champ — всероссийский чемпионат по программированию. Соревнование будет проходить в двух треках.
Трек 1. Алгоритмический. Индивидуальный зачет [призовой фонд 2 750 000 рублей]
Реши задачи, которые помогут прокачаться в работе с алгоритмами и структурами данных. Похожие задания встречаются на собеседованиях в МТС и других крупных компаниях. До 240 лучших участников попадут в финал и сразятся в лайв-кодинге.
Трек 2. Программирование роботов. Командный формат [призовой фонд 7 500 000 рублей]
Проведи робота по виртуальному лабиринту, затем управляй им дистанционно на офлайн-полигоне, а в финале — пройди испытания на реальной площадке и выбей соперников с платформы.
🎁 Организаторы отправят командам финалистов по одному роботу Waveshare Cobra Flex для кастомизации. После соревнований они останутся у участников в качестве подарка.
📍 Зрелищный шоу-финал с ИИ-технологиями, кодерскими челленджами и выступлениями международных и российских спикеров пройдет 21 ноября в МТС Live Холл.
Стоит участвовать, чтобы:
— Освежить знания и прокачать новые навыки.
— Заявить о себе на всю страну, получить карьерный буст и шанс лично пообщаться с HR-специалистами МТС.
⏰ Регистрация участников до 20 октября на сайте.
Трек 1. Алгоритмический. Индивидуальный зачет [призовой фонд 2 750 000 рублей]
Реши задачи, которые помогут прокачаться в работе с алгоритмами и структурами данных. Похожие задания встречаются на собеседованиях в МТС и других крупных компаниях. До 240 лучших участников попадут в финал и сразятся в лайв-кодинге.
Трек 2. Программирование роботов. Командный формат [призовой фонд 7 500 000 рублей]
Проведи робота по виртуальному лабиринту, затем управляй им дистанционно на офлайн-полигоне, а в финале — пройди испытания на реальной площадке и выбей соперников с платформы.
🎁 Организаторы отправят командам финалистов по одному роботу Waveshare Cobra Flex для кастомизации. После соревнований они останутся у участников в качестве подарка.
📍 Зрелищный шоу-финал с ИИ-технологиями, кодерскими челленджами и выступлениями международных и российских спикеров пройдет 21 ноября в МТС Live Холл.
Стоит участвовать, чтобы:
— Освежить знания и прокачать новые навыки.
— Заявить о себе на всю страну, получить карьерный буст и шанс лично пообщаться с HR-специалистами МТС.
⏰ Регистрация участников до 20 октября на сайте.
Хотите собрать свой мини-Google? 🚀
🗓 22 октября, 20:00 приглашаем на открытый урок OTUS «Мини-поисковик своими руками». На этом вебинаре вы создадите поисковик с нуля — без готовых библиотек и магии. Только алгоритмы и код.
Разберём, как:
• объединить КМП и префиксное дерево;
• реализовать автодополнение и подсчёт вхождений;
• оптимизировать поиск под большие тексты;
• превратить всё это в маленький, но работающий офлайн-поисковик.
После вебинара вы сможете самостоятельно:
— строить индекс слов и быстро искать по нему;
— собирать статистику запросов;
— понять, как внутри устроены поисковики.
Открытый урок проходит в преддверие старта курса «Алгоритмы и структуры данных». Все участники получат скидку на обучение.
Присоединяйтесь 22 октября в 20:00:
https://otus.pw/r8Li/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🗓 22 октября, 20:00 приглашаем на открытый урок OTUS «Мини-поисковик своими руками». На этом вебинаре вы создадите поисковик с нуля — без готовых библиотек и магии. Только алгоритмы и код.
Разберём, как:
• объединить КМП и префиксное дерево;
• реализовать автодополнение и подсчёт вхождений;
• оптимизировать поиск под большие тексты;
• превратить всё это в маленький, но работающий офлайн-поисковик.
После вебинара вы сможете самостоятельно:
— строить индекс слов и быстро искать по нему;
— собирать статистику запросов;
— понять, как внутри устроены поисковики.
Открытый урок проходит в преддверие старта курса «Алгоритмы и структуры данных». Все участники получат скидку на обучение.
Присоединяйтесь 22 октября в 20:00:
https://otus.pw/r8Li/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
String
вместо StringBuilder
при конкатенации в циклеВ Java строки (
String
) неизменяемы. При каждой конкатенации через +
создаётся новый объект, что приводит к избыточным затратам памяти и снижает производительность, особенно в циклах.StringBuilder
, который изменяем и работает быстрее при частых операциях с текстом.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Метод
Files.mismatch()
, добавленный в Java 12, позволяет сравнить два файла и найти позицию первого несовпадающего байта. Если файлы идентичны, метод возвращает -1
. Это полезно для проверки целостности данных или сравнения файлов.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6