Créer UUID avec des zéros
j'essaie de générer un UUID avec tous les zéros:
java.util.UUID fromString "00000000-00000000-00000000-00000000"
L'erreur est
java.lang.IllegalArgumentException: Invalid UUID string: 00000000-00000000-00000000-00000000
at java.util.UUID.fromString(UUID.java:194)
Ce que je fais mal?
je veux créer soit "MinValue" ou "Invalid" UUID.
3 réponses
essayez ceci
System.out.println(new UUID(0,0));
il imprime
00000000-0000-0000-0000-000000000000
c'est le bon format à utiliser dans UUID.fromString
N'est-ce pas censé être 8-4-4-4-12? pareil: 00000000-0000-0000-0000-000000000000
https://en.wikipedia.org/wiki/Universally_unique_identifier#Nil_UUID:
L'UUID "nil", un cas spécial, est l'UUID, 00000000-0000-0000-0000-000000000000; c'est-à-dire, tous les bits mis à zéro.
les tirets devraient suivre le format normal 8-4-4-4-4-12 parce que c'est ce que les normes disent d'utiliser et beaucoup (la plupart?) les outils renforcent cela sur l'entrée.
outils accepter d'autres formats, par exemple, 32 hex les chiffres sans tirets, parce qu'ils suppriment simplement les tirets (s'ils sont présents) avant la validation de toute façon, mais l'outil particulier que vous utilisez est un peu plus strict/plus intelligent, ce qui montre que l'utilisation de formats non standard est une mauvaise habitude qui finira par vous mordre.