Ich habe einige Probleme in Eclipse mit Java. Mein Code erzeugt Kennzeichen für Autos in Deutschland, wie B-AC 7687 B ist für Berlin, so wie Sie sehen können, 3 Zeichen und 4 ganze Zahlen, beide zusammen ist ein String (Sie sehen dies in meinem Code). Es generiert eine Lizenz nach dem Zufallsprinzip. Ich habe math.random dafür benutzt. Wenn der Benutzer "2" eingibt, will man 2 Nummernschildnummern, die nicht gleich sind! Also hier ist das Problem, es erzeugt immer das gleiche Nummernschild, obwohl ich das Zufallsprinzip verwendet habe. Wenn der Benutzer 2 eingibt, sollte es zwei verschiedene Lizenzen geben, dazu muss ich die Generate-Methode 2-mal oder noch mehr starten (abhängig von der Eingabe des Benutzers). Wie kann ich vom Benutzer abhängige Methoden starten? Hier ist mein Code:Starten einer Methode mehrmals
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();
}
}
Wow, das funktioniert. Vielen Dank. Das Problem ist geliebt. Lieb dich – Blnpwr