私はJavaを使用してEclipseでいくつかの問題に直面しています。私のコードでは、ベルリンのB-AC 7687 Bのようなドイツの車のナンバープレート番号が生成されていますので、3文字と4整数を見ることができます。ランダムに1つのライセンスを生成します。私はこれにmath.randomを使った。ユーザーが "2"を入力すると、同じでない2つのナンバープレート番号が必要になります。だからここに問題がある、私はランダムな原則を使用したが、常に同じナンバープレート番号を生成する。ユーザーが2を入力すると、2つの異なるライセンスが必要です。このためには、generateメソッドを2回以上起動する必要があります(ユーザーの入力に依存します)。ユーザー入力に依存するメソッドを開始するにはどうすればよいですか?ここに私のコードは次のとおりです。メソッドをさらに起動する
import java.util.*;
public class Kennzeichen {
char[] alphabet = new char[26];
char[] nummern = new char[10];
String teilstring;
String teilnummern1, teilnummern2, teilnummern3, teilnummern4, teilnummern;
String finale;
int zahl = (int) ((Math.random()) * 25 + 1);
int zahl1 = (int) ((Math.random()) * 25 + 1);
int nummer1 = (int) (Math.random() * 9 + 1);
int nummer2 = (int) (Math.random() * 9 + 1);
int nummer3 = (int) (Math.random() * 9 + 1);
int nummer4 = (int) (Math.random() * 9 + 1);
char a = 65; //ascii
char b = 48; // asci
int zahler = 0;
Scanner s = new Scanner(System.in);
int eineZahl = s.nextInt();
public void arrayalphabet() { // generates an array alphabet A-Z
for (int i = 0; i < alphabet.length; i++, a++) {
alphabet[i] = a;
}
}
public void arraynummern() { //generates numbers between 0 and 9
for (int i = 0; i < nummern.length; i++, b++) {
nummern[i] = b;
}
}
public String generierekennzeichen() { // first char must be B therefore alphabet[1]
return(teilstring = alphabet[1] + "" + alphabet[zahl] + "" + alphabet[zahl1]);
}
public String generierenummern() { // 4 numbers are generated and returned as total
teilnummern1 = nummern[nummer1] + "";
teilnummern2 = nummern[nummer2] + "";
teilnummern3 = nummern[nummer3] + "";
teilnummern4 = nummern[nummer4] + "";
return(teilnummern = teilnummern1 + teilnummern2 + teilnummern3 + teilnummern4 + "");
}
public void print() { //prints the total license such as B-AD 7645
System.out.println(finale = teilstring + "-" + teilnummern);
}
public void erzeugestack() { //using stack, not that important(just practise
Stack<String> s = new Stack<String>();
s.push(finale);
}
public void Abfrage() { // eineZahl is the input of the user, e.g 2
for(int i=0; i<eineZahl;i++){
generierekennzeichen();
generierenummern();
print();
}
}
public static void main(String[] args) {
Kennzeichen kennzeichen = new Kennzeichen();
kennzeichen.arrayalphabet();
// kennzeichen.generierekennzeichen();
kennzeichen.arraynummern();
// kennzeichen.generierenummern();
kennzeichen.Abfrage();
kennzeichen.erzeugestack();
}
}
うわー、働きました。どうもありがとうございました。問題は愛されている。好きだよ – Blnpwr