Метод
ByteArrayOutputStream.writeTo()
позволяет записывать содержимое байтового массива (ByteArrayOutputStream
) напрямую в другой выходной поток (OutputStream
). Это удобно, когда нужно перенаправить данные, например, в файл или сетевой сокет, без промежуточного копирования.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
String
вместо StringBuilder
при конкатенации в циклеВ Java строки (
String
) неизменяемы. При каждой конкатенации через +
создаётся новый объект, что приводит к избыточным затратам памяти и снижает производительность, особенно в циклах.StringBuilder
, который изменяем и работает быстрее при частых операциях с текстом.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
Pattern.asMatchPredicate()
, добавленный в Java 11, позволяет преобразовать регулярное выражение в предикат, который можно использовать для фильтрации потоков или проверки строк на полное совпадение с шаблоном.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
ProcessHandle.info()
позволяет получать информацию о запущенных процессах в системе, таких как аргументы командной строки, время запуска и использование ресурсов. Это полезно для мониторинга процессов в Java-приложениях.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
Files.mismatch()
, добавленный в Java 12, позволяет сравнить два файла и найти позицию первого несовпадающего байта. Если файлы идентичны, метод возвращает -1
. Это полезно для проверки целостности данных или сравнения файлов.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
LockSupport.park()
позволяет приостановить выполнение потока без использования synchronized
или wait()
. Это полезно для низкоуровневой синхронизации потоков.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
JarFile
Создание объекта JarFile
Для создания объекта
Java Learning👩💻
JarFile
— это класс в Java, который используется для чтения содержимого JAR-файла. JAR-файл (Java ARchive) — это формат архива, который используется для объединения нескольких файлов Java (.class), а также других ресурсов, таких как изображения, звуки и текстовые файлы, в один файл.Создание объекта JarFile
Для создания объекта
JarFile
необходимо использовать его конструктор, который принимает путь к JAR-файлу в качестве параметра.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
MethodHandles.arrayElementVarHandle()
создаёт VarHandle
для работы с элементами массива, позволяя выполнять атомарные операции без блокировки.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
StackWalker.walk()
позволяет динамически получать информацию о текущем стеке вызовов, фильтровать его и анализировать. Это полезно для логирования, отладки и мониторинга исполнения кода.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
Thread.onSpinWait()
сообщает процессору, что поток ожидает без выполнения полезной работы. Это позволяет улучшить производительность в многопоточных приложениях, уменьшая нагрузку на процессор во время активного ожидания.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
ProcessHandle.onExit()
позволяет отслеживать завершение внешнего процесса в асинхронном режиме. Это полезно для управления запущенными процессами и выполнения действий после их завершения.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
==
для сравнения строкВ Java строки (
String
) — это объекты, а оператор ==
сравнивает ссылки, а не их содержимое. Это может привести к неожиданным ошибкам при сравнении строк, особенно если строки создаются динамически.equals()
, который сравнивает содержимое строк, а не ссылки.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
java.util.Timer()
позволяет создавать таймеры, которые выполняют определенные задачи через заданные интервалы времени. Это полезно для планирования и отложенного выполнения задач без блокировки основного потока.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Метод
Thread.yield()
сообщает планировщику потоков, что текущий поток готов уступить процессор другим потокам того же приоритета. Это полезно для управления многопоточными задачами без блокировок.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
ProcessHandle.children()
возвращает поток (Stream<ProcessHandle>
) дочерних процессов текущего процесса. Это полезно для мониторинга запущенных подпроцессов и управления ими.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM