publicstatic String randomString(int i)
{
Random ran = new Random(i);
StringBuilder sb = new StringBuilder(); while (true)
{ int k = ran.nextInt(27); if (k == 0) break;
sb.append((char)('`' + k));
}
return sb.toString();
}
如果是一组选择好的随机数,那么事实上他们并不是真正随机的。随机数的算法是根据种子参数来进行计算的,(当前则是 -229985452 或者 -147909649)。每一次当申请一个随机数的时候,它会根据相同的随机数种子来生成一个相同的值 – 打印出”hello world”。 Random(-229985452).nextInt(27)
前六个随机数是:8,5,12,12,15,0. Random(-147909649).nextInt(27)
前六个随机数是:23,15,18,12,4,0
当你将这些数字转换成字符的时候
104 –> h
101 –> e
108 –> l
108 –> l
111 –> o
119 –> w
111 –> o
114 –> r
108 –> l
100 –> d
你将获得hello world