In effetti hai ragione ho modificato il codice in questo modo e funziona.

codice:
      for (int i=0;i<5;i++){
            nome=in.nextLine();
            cognome=in.nextLine();
            String num=in.nextLine();
            eta = Integer.parseInt(num);
            
            V[i]=new Persona(nome,cognome,eta);
        }
Quindi l'alternativa dovrebbe essere sempre questo cioè convertire un int in una stringa con parseInt?
Accetto se ce ne sono altre alternative.
Comunque grazie del suggerimento.