I am new to coding and java and wrote a program that prints list of workers name, surname and age. While executing the second 'for' loop the program requests two inputs (name and surname) at the same time. How to fix this?
And if would have any critique about code, syntax, use of class, anything please comment on it. Thanks.
import java.util.Scanner;
public class Firm {
public static void main(String[] args) {
class Worker {
private int n, age;
private String name, surn;
private String[] names = new String[10];
private String[] surnames = new String[10];
private int[] years = new int[10];
public void workers(String name, String surn, int age, int index) {
names[index] = name;
surnames[index] = surn;
years[index] = age;
}
public String showme(int index) {
return(names[index] + " " + surnames[index]+ " " + years[index]);
}
}
Scanner scanner = new Scanner(System.in);
Worker worker = new Worker();
System.out.println("How many workers do you want to show: ");
worker.n = scanner.nextInt();
for(int i=0;i<worker.n;i++) {
System.out.println("Name: ");
worker.name = scanner.nextLine();
System.out.println("Surname: ");
worker.surn = scanner.nextLine();
System.out.println("Age: ");
worker.age = scanner.nextInt();
worker.workers(worker.name, worker.surn, worker.age, i);
}
System.out.println("Current workers are: ");
for(int i=0; i<worker.n; i++) {
System.out.println(worker.showme(i));
}
}
}