web-dev-qa-db-ja.com

ゼロでUUIDを作成する

私はすべてゼロの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」または「無効な」UUIDのいずれかを作成したい。

25
アレックス

これを試して

System.out.println(new UUID(0,0));

印刷する

00000000-0000-0000-0000-000000000000

これはUUID.fromStringで使用するのに適した形式です

50

8-4-4-4-12ではないですか?このように:00000000-0000-0000-0000-000000000000

11
Craig Moore

から https://en.wikipedia.org/wiki/Universally_unique_identifier#Nil_UUID

特殊なケースである「nil」UUIDは、UUID、00000000-0000-0000-0000-000000000000です。つまり、すべてのビットがゼロに設定されます。

ダッシュは通常の8-4-4-4-12形式に従う必要があります。これは、標準が使用すると言っていることであり、多くの(ほとんどの)ツールが入力時にそれを強制するためです。

一部のツールは、他の形式を受け入れることができます。とにかく検証前にダッシュ(存在する場合)を削除するだけなので、ダッシュなしの32桁の16進数です。あなたを噛んでしまう.

1
StephenS