我看到了这段代码:
public class HelloWorld {
public static void main(String ... args)
{
System.out.println(randomString(-229985452)+''+randomString(-147909649));
}
public static String randomString(int seed)
{
Random rand = new Random(seed);
StringBuilder sb = new StringBuilder();
while(true) {
int n = rand.nextInt(27);
if (n == 0) break;
sb.append((char) ('`' + n));
}
return sb.toString();
}
}
,工作结果如下: 你好世界
我想知道它为什么是
答案 0 :(得分:0)
随机数不是随机数,而是伪随机数。您可以搜索他们遵循的伪随机路径,寻找小模式。
在这种情况下,模式是'hello world'。
如果你从另一个seed
开始,那么你会得到废话;但是,既然你开始使用一个已知可以走hello world
的下一个字符的种子,那么你将获得hello world
。