Salve ho un problema con un programma che presi in input 10 utenti (nome,cognome,sesso,numero tessera),assegni a loro(randomicamente) un posto sull'aereo,un numero di punti di fedeltà ed in base ad essi uno stato(BRONZE,SILVER,GOLD,PLATINUM). Il programma funziona,l'unico problema è che quando mi chiede di inserire i dati del passeggero,i dati del primo li prende tutti mentre quelli successivi salta il nome. Ecco una porzione di codice:
public class Passeggero {
Random random = new Random();
private String nome;
private String cognome;
private int puntifedelta;
private int posto;
private String statotessera;
private char sesso;
private String numerotessera;
public void leggiDati() throws IOException{
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader t = new BufferedReader(input);
System.out.println("Inserisci nome: ");
nome = t.readLine();
System.out.println("Inserisci cognome: ");
cognome = t.readLine();
System.out.println("Inserisci il numero della tessera: ");;
numerotessera = t.readLine();
System.out.println("Inserisci il sesso dell'utente (M/F): ");
sesso = (char) System.in.read();
}
....
public static void main(String[] args) throws IOException {
Passeggero lista[]= new Passeggero[10];
for (int i=0;i<2;i++){
lista[i] = new Passeggero();
lista[i].leggiDati();
lista[i].valutaPunti();
lista[i].valutaStato();
lista[i].assegnaPosto();
}
for (int i=0;i<2;i++){
lista[i].stampaTessera();
}