如何使用Java设置程序以使用以下语句生成5位数字:
int n = (int)Math.floor(Math.random()*100000+1)
Run Code Online (Sandbox Code Playgroud)
它还必须打印生成的数字.我尝试过这种不同的方式,并不断出现错误.
有两种方法可以查看您的问题.您需要确保随机数生成器仅生成五位数(在10000 - 99999范围内)的数字,或者当生成的数字太低时,您需要打印带前导0的数字.
使用Java的Random类可以很好地满足第一种方法.
Random rand = new Random();
int n = rand.nextInt(90000) + 10000;
System.out.println(n);
Run Code Online (Sandbox Code Playgroud)
如果你以某种方式限制你必须在你的问题中使用该陈述,那么第二种方法可能就是你所追求的.您可以使用Java的DecimalFormat类在打印前使用前导零格式化随机数.
n = (int)Math.floor( Math.random() * 100000 + 1 );
NumberFormat formatter = new DecimalFormat("00000");
String number = formatter.format(n);
System.out.println("Number with lading zeros: " + number);
Run Code Online (Sandbox Code Playgroud)