猿问

生成固定大小的随机字符串

有没有办法使用此代码生成随机字符串但大小为 42 个符号?

public static final String RANDOM_STRING = UUID.randomUUID().toString();


大话西游666
浏览 177回答 2
2回答

汪汪一只猫

不,您不能创建超过 36 个字符,因为UUID长度为 128 位。更多信息可以在这里找到。如果需要,则必须实现自己的功能来生成具有6 characters. 为此,您可以使用Apache Commons Lang包。然后将它与UUID字符串连接起来。

慕码人8056858

为了获得比通常生成的 36 个字符长度更长的任何字符的 UUID 的真正随机性,然后您可以从第二个生成的 UUID 中取出一部分(无论您想要什么长度)。这可以在同一行代码中完成:String RANDOM_STRING = UUID.randomUUID().toString() + "-" +                 UUID.randomUUID().toString().substring(0, 5);System.out.println("The UUID String is: " + RANDOM_STRING +         " and it is " + RANDOM_STRING.length() + " characters long.");但请记住……它不会是真正的 UUID。示例输出:The UUID String is: c8e1aceb-ee63-49f5-bd95-e6f3eebced20-d5c39 and it is 42 characters long.
随时随地看视频慕课网APP

相关分类

Java
我要回答