krosovok programs
224 subscribers
74 photos
13 videos
3 files
123 links
по всем вопросам —> @nefertitiNFT

soon...

https://t.me/krsCODE
Download Telegram
Sorted set

SortedSet — это интерфейс в Java Collection Framework, который предоставляет упорядочение элементов в множестве. Элементы упорядочиваются с помощью их естественного порядка или с помощью компаратора, который обычно предоставляется при создании отсортированного множества.

SortedSet имеет несколько дополнительных операций, которые позволяют использовать упорядочение элементов:
— first() и last() возвращают первый и последний элементы в множестве соответственно.
— headSet(), tailSet() и subSet() возвращают подмножества элементов, которые находятся до, после или между заданными элементами соответственно.

В этом примере мы создаем TreeSet (класс, который реализует SortedSet) и добавляем в него несколько строк. Поскольку строки реализуют интерфейс Comparable, они упорядочиваются в алфавитном порядке. Затем мы используем различные методы SortedSet для получения первого и последнего элементов, а также подмножеств элементов.


🔗полезные ссылки:

donat | буст | вопросики | магазин | тех.поддержка | примеры кода

📱 krosovok programs
Please open Telegram to view this post
VIEW IN TELEGRAM
432
напиши какой формат вам нравится, и какой вы бы хотели видеть
⭐️ планируется кое что интересное, и если будут интересные предложение в комментариях, добавлю и их
Please open Telegram to view this post
VIEW IN TELEGRAM
Как устроено под капотом LinkedHashMap?

LinkedHashMap — это реализация интерфейса Map, которая сохраняет порядок добавления элементов. В отличие от обычного HashMap, где элементы могут быть расположены случайным образом, LinkedHashMap поддерживает последовательность вставки или порядок доступа. Это достигается благодаря использованию двусвязного списка, который связывает все элементы карты.

⚙️ Структура LinkedHashMap

Основой LinkedHashMap является та же хэш-таблица, что и в HashMap, но с дополнительной структурой двусвязного списка для сохранения порядка элементов:

⭐️ Каждая запись (entry) в LinkedHashMap содержит ссылки на предыдущий и следующий элементы. Это позволяет поддерживать порядок добавления или порядок последнего доступа.
⭐️ Сначала выполняется хэширование ключей для быстрой вставки и поиска, как в HashMap, а уже потом запись связывается в список.

🔜 Производительность

⭐️ Вставка: Добавление новых элементов выполняется за O(1), поскольку элементы добавляются в конец двусвязного списка, а хэш-таблица используется для поиска свободной позиции.
⭐️ Удаление: Удаление элемента требует корректировки ссылок в двусвязном списке, что увеличивает накладные расходы, но также выполняется за O(1).
⭐️ Поиск: Операция поиска по ключу происходит с использованием хэш-таблицы и выполняется за O(1), как и в HashMap.
⭐️ Множественные коллизии: в худшем случае все операции будут выполняться с O(n), если допустить множественные коллизии.

🧠 Использование памяти

Каждая запись LinkedHashMap содержит дополнительные ссылки на предыдущий и следующий элементы, что увеличивает потребление памяти по сравнению с HashMap. Однако это оправдано, если важен порядок элементов.


💕 Преимущества:

- Сохранение порядка вставки: LinkedHashMap гарантирует, что элементы будут извлекаться в том порядке, в котором они были добавлены.
- Порядок доступа: Можно настроить LinkedHashMap на удаление самых старых элементов, что полезно для кэшей, где используется политика LRU (Least Recently Used).
- Предсказуемость итераций: В отличие от HashMap, где порядок элементов может изменяться, LinkedHashMap всегда сохраняет стабильный порядок.

🚫 Недостатки:

- Более высокое потребление памяти: Дополнительные ссылки на предыдущие и следующие элементы увеличивают память на каждую запись.
- Скорость: LinkedHashMap немного медленнее HashMap из-за поддержания порядка элементов.

краткая информация | Пример

📱 krosovok programs
Please open Telegram to view this post
VIEW IN TELEGRAM
544
скоро сведут еще 1 фит с соником, ждем, слушаем пока что это
https://t.me/krosovok_on_the_bit/193
1
DoubleAdder

DoubleAdder
это класс из пакета java.util.concurrent, предназначенный для эффективного параллельного суммирования значений типа double.

DoubleAdder оптимизирован для многопоточных приложений, когда нужно подсчитать сумму или другое агрегатное значение из большого числа потоков.

⭐️ Преимущества:

— Высокая скорость за счет разделения на сегменты и отсутствия блокировок.
— Минимизация конфликтов между потоками при обновлении.
— Хорошо масштабируется на большом количестве CPU ядер.
Please open Telegram to view this post
VIEW IN TELEGRAM
532
как по мне хорошо получилось, осталось свести только
оценку в коменты давайте
https://t.me/krosovok_on_the_bit/200
442
Контейнер Optional

Optional — это контейнер, который может содержать какое-то значение или не содержать ничего.
Он используется для обозначения отсутствия значения вместо null. Это позволяет избежать ошибок NullPointerException.

Optional появился в Java 8. Он представлен классом java.util.Optional.
Чтобы создать экземпляр Optional, используются статические методы:
— empty() для пустого Optional.
— of() для Optional с заданным значением.

Для получения значения из Optional используются методы get(), или orElse() с указанием значения по умолчанию. Также есть методы фильтрации значений, например filter(), map() и flatMap().


📱 krosovok programs
Please open Telegram to view this post
VIEW IN TELEGRAM
10211
вот что значит быть разработчиком...
я успел поспать, легенда все еще плагины пишет (за неделю больше чем на заводе поднял)
432
52к символов в школ проекте - ☠️☠️⚰️

52к символов в IntelliJ IDEA - 🌹🌷😘
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Христос Воскрес, всех с пасхой
Тип Optional

Тип Optional используется для представления возможности отсутствия значения. Он обертывает другой тип данных и может содержать либо значение этого типа, либо быть пустым (null).

Этот код создает Optional объект, который может содержать строку. Если строка доступна, она будет возвращена; в противном случае будет возвращено значение «Default Value».

Использование Optional способствует более чистому и безопасному коду при работе с возможно отсутствующими значениями.

📱 krosovok programs
Please open Telegram to view this post
VIEW IN TELEGRAM
34321
послушал я новый альбом фараона (10:13), ну что сказать, 50% альбома грязный звук, в плане сведения, очень странный альбом
много треков где он на продакшене, как эксперимент не плохо,
треки звучат живо, но..
везде звучание отличается, порядок не совпадает, будто набор песен собрали и все, нет прогрессии в общем

⭐️ мой топ с альбома:

омега,
добро пожаловать на луну,
бензобак,
чисто символически

пост не по теме, буду разнообразить контент и музыки и джавы любимой конечно же
разборы альбомчиков и всё такое будут под тегом

#мнениекросовка
Please open Telegram to view this post
VIEW IN TELEGRAM
311
часто задаваемые вопросы, которые мне задают

⭐️как преобразовать gradle проект в maven?

🔗 открыть с помощью telegra.ph

🔗 открыть с помощью гугл документа

⭐️ не работает кнопка запуска

🔗 открыть с помощью telegra.ph

🔗 открыть с помощью гугл документа

⭐️частые вопросы, по типу как понять что за setFoodLevel

Bukkit API Packages

🔗 https://hub.spigotmc.org/javadocs/bukkit/


Список вопросов - ответов будет пополнятся, формат ответов сделаю получше, чем ссылки скринов через телеграф
----
сделано, чтоб каждому не пересылать одно и тоже, а просто кидать ссылку, спасибо за понимание

🔞По всем вопросам —> @krosovokHelpBot
Please open Telegram to view this post
VIEW IN TELEGRAM
421
всех с маем 💋
Please open Telegram to view this post
VIEW IN TELEGRAM
Selector

Класс Selector используется для организации многоканального неблокирующего ввода-вывода.
Основная идея в том, что Selector позволяет одному потоку следить за состоянием множества каналов (сокетов, файловых каналов) и обрабатывать их события (готовность к чтению/записи).

Возможности Selector:
— Регистрация множества каналов в Selector для мониторинга.
— Проверка готовности зарегистрированных каналов к операциям чтения, записи.
— Извлечение готовых каналов и выполнение операций с ними.
— Отмена регистрации каналов в Selector.

Использование Selector позволяет избежать блокировки на операциях чтения/записи по каналам и эффективно масштабировать приложение для одновременной работы с большим количеством соединений.
Класс часто применяется в сетевых серверах для неблокирующей обработки большого числа клиентских соединений в одном потоке.

📱 krosovok programs
Please open Telegram to view this post
VIEW IN TELEGRAM
322
извиняюсь, что мало постов, работа
work work work
🤫🤫🤫
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
жили были 3 админа
922