每当我尝试执行此操作时,它会在我的应用程序中为我提供FC
int a, b;
Random s = new Random();
if (diffi.contains("easy") && name.contains("sub")) {
a = s.nextInt(21);
b = s.nextInt(a);
}
Run Code Online (Sandbox Code Playgroud)
但是当删除"a"并将数字放在其位置然后它开始工作
int a, b;
Random s = new Random();
if (diffi.contains("easy") && name.contains("sub")) {
a = s.nextInt(21);
b = s.nextInt(21);
}
Run Code Online (Sandbox Code Playgroud)
我希望第二个数字"b"在所有情况下都小于a
如果第一次调用nextInt返回0 ,则会出现异常.然后第二次调用不能返回大于或等于0但小于0的值,因此异常.
来自以下文档Random.nextInt:
抛出:
IllegalArgumentException- 如果n不是积极的话
您应该退一步,并找出为什么您的诊断方法实际上没有看到这些异常细节.你检查过申请日志了吗?我希望异常是明确的,有正确的例外,这样可以明显地说明错了.
编辑:我非常怀疑它实际上是在执行代码时抛出异常.相反,我怀疑,要么是代码执行很多次(所以最后你会发现a为0,将引发异常),或者你只是不走运.
| 归档时间: |
|
| 查看次数: |
89 次 |
| 最近记录: |