Java随机打印

时间:2012-09-24 19:42:16

标签: java random numbers

我使用以下方法生成0-99之间的随机数:

int num2= (int)(Math.random() * ((99) + 1));

当数字低于10时,我希望它以0num2打印 因此如果数字为9则为09。

我怎样才能打印出来?

5 个答案:

答案 0 :(得分:5)

您可以使用format()方法:

System.out.format("%02d%n", num2);

%02d将参数打印为宽度为2的数字,填充为0' s %n为您提供换行符

答案 1 :(得分:3)

System.out.println((num2 < 10 ? "0" : "") + num2);

一个班轮: - )

答案 2 :(得分:2)

String str;
if (num2 < 10) str = "0" + num2;
else str = "" + num2;

System.out.println("Value is: " + str);

答案 3 :(得分:2)

查看PrintStream.format,它允许您使用指定的宽度和填充字符进行打印。

System.outPrintStream,因此您可以使用System.out.format代替println

您的情况非常简单,请查看syntax格式字符串:

System.out.format("%02d", num2);

这里 2 是最小宽度, 0 指定如果结果的宽度小于2,则用零填充结果。

答案 4 :(得分:1)

您可以使用删除额外数字的方法。

System.out.println(("" + (int)(Math.random()*100 + 100)).substring(1));

或使用String格式。

String s = String.format("%02d", (int)(Math.random()*100));

System.out.printf("%02d", (int)(Math.random()*100));

我通常会使用最后一个选项,因为它允许您组合其他字符串并打印它们。