Zuerst möchte ich Benutzer etwas eingeben (Name, Kontakt, Idnumber), und ich werde 2 verschiedene Datei zeigen, aber Code sind gleich. Das erste Code-Problem ist "Name" Eingang Ort verschwinden, und die zweite aber verschwindet nicht.Kann mir jemand das Problem sagen? Ich bin neu in Java.Gleicher Code, aber unterschiedliche Ausgabe
public class Admin {
static Scanner scan= new Scanner(System.in);
static Client client = new Client();
public void admin(){
newClient []nc = new newClient[10];
\\login();
while(true){
System.out.println("Select 1:add Client\n 2:add Account\n 3:login as Client");
try{
int selection = scan.nextInt();
switch(selection)
{
case 1: addClient(nc);
break;
case 2: \\addAccount(nc);
break;
case 3: ;
break;
default: System.out.println("INvalid selection");
}
}
catch(InputMismatchException ex){
System.out.println("Invalid input");
scan.nextLine();
}
}
}
public void addClient(newClient []nc){
for(int i=0;i<nc.length;i++){
System.out.println("Enter name");
String name = scan.nextLine();
System.out.println("Enter contact");
String contact = scan.nextLine();
System.out.println("Enter id number");
String idNumber = scan.nextLine();
nc[i]=new newClient(name,contact,idNumber);
System.out.println(nc[i]);
}
}
Ausgang des ersten Codes ist
Namen eingeben
eingeben Kontakt
Warum der Name Eingabe Ort fehlt? Es gibt den zweiten Code
public static void main(String[]args){
Scanner scan =new Scanner(System.in);
for(int i=0;i<nc.length;i++){
System.out.println("Enter name");
String name = scan.nextLine();
System.out.println("Enter contact");
String contact = scan.nextLine();
System.out.println("Enter id number");
String idNumber = scan.nextLine();
nc[i]=new newClient(name,contact,idNumber);
System.out.println(nc[i]);
}
}
Der zweite Code korrekt funktioniert.
Geben Sie den Namen
Kontakt Geben Sie
Geben Sie IDNumber
Vielen Dank für Ihre klare Erklärung, ich habe etwas Neues gelernt. –