我不确定如何在Java语言中输出以下内容。注意输出中存在双短划线:
String keyName = projectId.AsString + "-comments-" + creationMomentString + "-" + _rand.nextInt() + ".txt";
System.out.println(creationMomentString);
System.out.println(_rand.getClass());
System.out.println(keyName);
输出:
0000001466400377645
class java.security.SecureRandom
o7grn3qt-comments-0000001466400377645--874329600.txt
-------------------------------------^
答案 0 :(得分:8)
嗯......
致电
_rand.nextInt()
返回一个整数值。整数可能是负数。例如,它可能是
-874329600
从而产生你得到的输出。
第一个减号是字符串连接的文本输出。第二个减号是数字的符号。
答案 1 :(得分:2)
Random.nextInt
可以返回否定值。您所看到的是您明确输入的"-"
,后跟负数。
答案 2 :(得分:0)
它绝对是Random()返回值的减号.nextInt()。在Javadoc中我们可以看到:
所有2 ^ 32个可能的int值都以(近似)相等的概率生成。
答案 3 :(得分:0)
它不是你想到的双击(--)
。类
nextInt()
java.security.SecureRandom
生成负{1}}的唯一随机数。
所以你的完整字符串作为文件名将显示为-874329600
如下面的缩写..
o7grn3qt-comments-0000001466400377645--874329600.txt