Извините за мой плохой английский, и у меня проблема 2 заставила меня смутить. Первая проблема: я хочу, чтобы пользователь вводил 3 вещи (имя, контакт, idNumber), но когда я пытаюсь ввести имя, введите имя место отсутствующее. Я нашел решение на входное место отсутствующим решением, когда исправил его с помощью (scan.nextLine()), возникла другая проблема, которая отсутствует. Вторая проблема заключается в том, как я могу назначить конструктор массиву.Массив и ввод
public class newClient {
Scanner scan= new Scanner(System.in);
Random rand=new Random();
static int IDumber;
String unique;
int pin;
static int count = 0;
private String name;
private String idNumber;
private String contact;
public newClient(){
setContact(contact);
setIdNumber(idNumber);
setName(name);
count++;
}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public String getIdNumber(){
return idNumber;
}
public void setIdNumber(String idNumber){
this.idNumber=idNumber;
}
public String getContact(){
return contact;
}
public void setContact(String contact){
this.contact=contact;
}
public int uniqueID(){
unique = idNumber.substring(8);
IDumber = Integer.parseInt(unique);
return IDumber;
}
public void display(){
System.out.println("This is the password for first time login "+pin);
}
public int pinCode(){
pin = rand.nextInt(9000)+1000;
return pin;
}
public String toString(){
return "Name: "+name+"\nUniqueID: "+IDumber+"\nContact: "+getContact()+"\npinCode: "+pin ;
}
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: client.client();
break;
default: System.out.println("INvalid selection");
}
}
catch(InputMismatchException ex){
System.out.println("Invalid input");
scan.nextLine();
}
}
}
public void addClient(newClient []nc){
newClient nw = new newClient();
System.out.println("Enter name");
nw.setName(scan.nextLine());
scan.nextLine();
System.out.println("Enter contact");
nw.setContact(scan.nextLine());
System.out.println("Enter id number");
nw.setIdNumber(scan.nextLine());
nc[newClient.count]= new newClient();
System.out.println("count"+nc[newClient.count]);
nw.pinCode();
nw.uniqueID();
System.out.println(nw.toString());
}
}
Спасибо за подход! Да, я новичок в кодировании, и я не очень разбираюсь в java ... Мне так жаль, что я поставил вопрос. Фактически это часть моего проекта, и я не удаляю те не соответствующие вещи. И как можно Я получаю назначение конструктора массиву (когда мы er создал конструктор (nc [newClient.count] = new Client())). Поскольку моя лекция просто показывает мне похожий пример, и я даже не знаю, есть ли другой способ сделать что-то подобное. –
Сначала вы должны сначала поработать над своей базой, изучить объектно-ориентированные подходы, прочитать книги, посмотреть учебники и прочее, что поможет вам, счастливое кодирование. –