Java 中的 BankApplication 程序,setDebitCard()
功能问题。
在这里,我无法在每次java 运行变量后生成唯一的随机数debitCardNumber
,而它与debitCardPin
.
nextDouble(),Math.random()
我也尝试使用 Random class method ThreadLocalRandom.current().nextDouble()
..
问题:
debitCardNumber
尝试上述所有操作后,输出是相同的。(没有任何语法错误)
另外,我得到的是相同的 10 位数字,debitCardNumber
而不是 12 位数字。
debitCardPin
工作正常,但有时它会给我一个唯一的 3 位随机数。
代码
package bankAccountApp;
import java.util.Random;
import java.util.concurrent.ThreadLocalRandom;
public class Current extends Account {
private int debitCardNumber;
private int debitCardPin;
Random rand = new Random();
//setDebitCard() code
private void setDebitCard(){
debitCardNumber = (int)(ThreadLocalRandom.current().nextDouble()*Math.pow(10,12));
/* Also tried using
debitCardNumber = (int)(rand.nextDouble()*Math.pow(10,12));
debitCardNumber = (int)(Math.random()*Math.pow(10,12));
*/
debitCardPin = (int)(Math.random()*Math.pow(10,4));
}
预期结果:
debitCardNumber
每次JAVA RUN后应返回一个唯一的随机 12 位整数
debitCardPin
应该只返回 4 位整数。
实际结果:
debitCardNumber
每次JAVA RUN后返回相同的 10 位整数
debitCardPin
有时返回一个 3 位唯一随机整数。
Qyouu
心有法竹
相关分类