如何在java中生成10个随机数并将其分配给字段?
我在学校有一个项目,我需要模拟保存车辆记录
Vehicle是一个抽象类,它扩展了两个类(汽车类和汽车类)。还有一个接口(NewRegistration),其中包含一个方法register()
,这两个类实现了该接口。它应该为汽车和汽车注册一个新的注册,但我之前应该检查我插入的注册是否在一种方法checkNumber()
中正确
总之,我已经解决了所有的任务,但只有一个我不能解决,那就是生成10个随机数
注册应包含15个字符,第一个和第二个字符为大写字母,第三个字符为“-”,最后两个字符为小写字母。。其他字符应为数字,这些数字应随机生成
以下是我迄今为止所做的工作:
汽车。java:
public class Automobil extends Vozilo implements NovaRegistracija{
private int brojVrata, brojSedista;
public Automobil(String marka, String model, String registracija, int kubikaza, int brojVrata, int brojSedista) {
super(marka, model, registracija, kubikaza);
this.brojVrata = brojVrata;
this.brojSedista = brojSedista;
}
public Automobil() {
}
// checkNumber() method
@Override
public void proveriBroj() {
boolean provera = true;
boolean proveraKubikaze = true;
String parsedInteger = String.valueOf(getKubikaza());
for (int j = 0; j < parsedInteger.length(); j++) {
if (Character.isLetter(parsedInteger.charAt(j))) {
proveraKubikaze = false;
}
}
// Checking registration
if (this.getRegistracija().length() == 15) {
if (Character.isUpperCase(getRegistracija().charAt(0)) && Character.isUpperCase(getRegistracija().charAt(1))) {
if (getRegistracija().charAt(2) == '-') {
if (Character.isLowerCase(getRegistracija().charAt(getRegistracija().length()-1)) && Character.isLowerCase(getRegistracija().charAt(getRegistracija().length()-2))) {
for (int i = 3; i < getRegistracija().length()-2; i++ ) {
if (!Character.isDigit(getRegistracija().charAt(i))) {
provera = false;
System.out.println("11111111111111111");
break;
}
}
} else {
System.out.println("222222222222");
provera = false;
}
} else {
System.out.println("333333333333");
provera = false;
}
} else {
System.out.println("44444444444444444");
provera = false;
}
} else {
System.out.println("555555555555555");
provera = false;
}
if (proveraKubikaze) {
System.out.println("Kubikaza je dobra!");
} else {
System.out.println("Kubikaza nije dobra!");
}
if (provera) {
System.out.println("Broj registracije je ispravan!");
} else {
System.out.println("Broj registracije je neispravan!");
}
}
// register() method from interface NewRegistration
@Override
public void registruj() {
this.setRegistracija("AA-" + "aa");
proveriBroj();
System.out.println("- - - - - - - - - - - - - - - - - - - -");
}
public int getBrojVrata() {
return brojVrata;
}
public void setBrojVrata(int brojVrata) {
this.brojVrata = brojVrata;
}
public int getBrojSedista() {
return brojSedista;
}
public void setBrojSedista(int brojSedista) {
this.brojSedista = brojSedista;
}
}
那么,我现在如何为整个车辆登记随机分配10个生成号码呢
先谢谢你
# 1 楼答案
使用
org.apache.commons.lang.RandomStringUtils
# 2 楼答案
数学。random()所以这是我想要的方法,你可以简单地生成简单的数字,比如乘以10和(或不)舍入
# 3 楼答案
这是我写的一个函数:
此函数非常灵活,可用于
selection
或times
的任何输入