Универсальный уникальный идентификатор(Английский:Universally Unique Idэнтификатор, аббревиатура:UUID) используется длякомпьютер128-битный идентификатор в системе для определения количества сообщений и связанных терминов:Глобально уникальный идентификатор(GUID).
Генерируется по стандартным методикам, не зависит отцентральное агентствоизрегистрираспространять,UUIDуникальный, в отличие от большинства другихНумерацияПланы разные. повторениеUUIDВероятность кода близка к нулю и ею можно пренебречь.
UUIDОн состоит из группы 32-значных шестнадцатеричных чисел, поэтомуUUIDТеоретическая сумма составляет 16 ^ 32 = 2 ^ 128, что примерно равно 3,4 x 10 ^ 38. То есть, если каждыйнаносекунция(нс) дает 1триллионПотребуется 10 миллиардов лет, чтобы израсходовать все UUID.
UUIDСтандартный тип содержит 32шестнадцатеричныйЧисла, сДефисделится на пять разделов в форме8-4-4-4-1232 символа.
Пример: 550e8400-e29b-41d4-a716-446655440000
UUID формат:
В своем каноническом текстовом представленииUUID16 октетов из 32 шестнадцатеричных (с основанием 16) цифр, отображаемых в пяти группах, разделенных дефисом «-», «8-4-4-4-12», всего 36 символов (32 буквенно-цифровых символа и 4 дефиса). Например:
123e4567-e89b-12d3-a456-426655440000
xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx
ps: сравните вверх и вниз, a представляет 10 в шестнадцатеричном формате
четыре цифрыMвыражатьUUIDномер версииNОт одного до трех старших битовUUIDВарианты. В примереMда1иNдаa(10xx), что означает, что этот UUID является UUID «вариант 1», «версия 1»; то есть основанный на времениDCE/RFC 4122 UUID.
UUID-версия:
Для «вариантов 1» и «вариантов 2» в стандарте определены пять версий, и каждая версия может быть более подходящей, чем другая, в конкретном случае использования.
М обозначается строкой версии.
Версия 1 - UUID генерируется из ID времени и узла (обычно MAC-адрес);
Версия 2 - UUID генерируется из идентификатора (обычно идентификатора группы или пользователя), времени и идентификатора узла;
Версия 3, Версия 5. Детерминированные UUID генерируются путем хеширования идентификаторов и имен пространства имен;
Версия 4 — использование UUIDслучайностьилипсевдослучайностьгенерировать.
Генерация UUID в Java:
Давайте представимJava UUIDкласс можно использовать для созданияUUIDМетоды:
1. randomUUID():
Он использует криптографически стойкий генератор псевдослучайных чисел для генерации псевдослучайных чисел v4.UUID:
UUID uuid = UUID.randomUUID();
2. nameUUIDFromBytes():
мы можем использоватьnameuidfrombytes ()генерировать из массива байтовUUID:
byte[] byteArr = {11, 23, 33};
UUID uuid = UUID.nameUUIDFromBytes(byteArr);
Этот метод генерирует UUID v3 (на основе имени).
3. fromString():
использоватьfromString (), мы можем создать из стандартного строкового представленияUUID:
UUID uuid = UUID.fromString(
"533a4559-e55c-18b3-2456-555563322002");
Для любой недопустимой строки, переданной в качестве параметра, будет выброшеноIllegalArgumentException.
Сравните два uuid:
Java UUIDДостигнутоComparableинтерфейс, поэтому мы можем использоватьcompareTo ()способ их сравнить
UUID uuid1 = UUID.randomUUID();
UUID uuid2 = UUID.randomUUID();
int` `result = uuid1.compareTo(uuid2);
как мы знаем,compareTo ()метод возвращает:
- 1: если uuid1 больше, чем uuid2
- 0: если uuid1=uuid2
- -1: если uuid1 меньше uuid2
Мы также можем использоватьequals ()метод сравнения.
Суммировать:
В этом уроке мы узналиUUIDчто такое и его формат и версия. Мы также представляемjava UUIDсозданный классuuidМетоды.
Об авторе
Привет всем, я дядя Май, в настоящее время работаю вJava-разработка, Front-end и back-end знаю немного. Надеюсь, что мои друзья, которым я нравлюсь, обратят внимание на мой личный паблик-аккаунт, чтобы было удобно получать информацию о статье из первых рук. Конечно, вы также можете добавить мой личный WeChat (справа внизу), каждый может подружиться, спасибо за вашу поддержку.