Ответ 1
попробуй это
System.out.println(new UUID(0,0));
он печатает
00000000-0000-0000-0000-000000000000
это правильный формат для использования в UUID.fromString
Я пытаюсь создать UUID со всеми нулями:
java.util.UUID fromString "00000000-00000000-00000000-00000000"
Ошибка
java.lang.IllegalArgumentException: Invalid UUID string: 00000000-00000000-00000000-00000000
at java.util.UUID.fromString(UUID.java:194)
Что я делаю не так?
Я хочу создать либо "MinValue", либо "Invalid" UUID.
попробуй это
System.out.println(new UUID(0,0));
он печатает
00000000-0000-0000-0000-000000000000
это правильный формат для использования в UUID.fromString
Разве это не должно быть 8-4-4-4-12? например: 00000000-0000-0000-0000-000000000000
Из https://en.wikipedia.org/wiki/Universally_unique_identifier#Nil_UUID:
"Nil" UUID, особый случай, является UUID, 00000000-0000-0000-0000-000000000000; то есть все биты устанавливаются в ноль.
Черточки должны следовать нормальному 8-4-4-4-12 формату, потому что то, что стандарты говорят использовать, и многие (большинство?) Инструментов обеспечивают это на входе.
Некоторые инструменты могут принимать другие форматы, например, 32 шестнадцатеричных цифры без дефиса, поскольку они просто удаляют тире (если они есть) до валидации в любом случае, но конкретный инструмент, который вы используете, немного строже/умнее, что показывает, стандартные форматы - это плохая привычка, которая в конечном итоге кусает вас.