我已经在Ibello和Java中进行了测试。我用
int random = (int)(Math.random() * (100000 - 1) + 1);
生成5位数代码。
我有一个测试班:
pthUgyintezesNewCase.I_Use_the_5digits();
allatiMellektermekSteps.Delete_the_old_datas();
pthNewCase.I_Save_And_Close(); //it brokes here
// Steps Class
public void I_Use_the_5digits() throws Exception{
int random = (int)(Math.random() * (100000 - 1) + 1);
//
如果该应用生成的5位数字比以往任何时候都要多,则该应用不会运行。而且,是否有可能,如果它再次生成外观,它会向数字加1直到可以运行?
答案 0 :(得分:0)
我认为您正在尝试生成5位数字,但有时该数字仅为4位吗?如果是这种情况,请尝试以下操作:
(int)(Math.random() * (100000 - 10000) + 10000);
使用10000而不是1,可以确保该数字始终包含至少5位数字
编辑:
下面是一个测试用例,用于检查接下来的10'000'000个数字:
import java.lang.Math;
import java.util.Random;
public class HelloWorld
{
public static void main(String[] args)
{
for(int i = 0; i < 10000000; i++) {
int number = (int)(Math.random() * (100000 - 10000) + 10000);
if(String.valueOf(number).length() != 5) {
System.out.println(String.valueOf(number).length());
System.exit(0);
}
}
System.out.println("Finished with all 5 digit numbers");
}
}