Innanzitutto grazie per la risposta.
Ho fatto le modifiche da lei dettate:
Ho eliminato l'array locale nell metodo(frutto di vari tentativi), ho aggiustato anche la dichiarazione dell'array di istanza e il generatore di numeri casuali.
Ma purtroppo non va ancora.
Exception in thread "main" java.lang.NullPointerException
at Gara.creaGrigliaDiPartenza(Gara.java:46)
at Gara.<init>(Gara.java:31)
at TestGara.main(TestGara.java:5)
import java.lang.Math;
public class Gara
{
private String nome;
private String risultato;
private Auto[] griglia ;
public void setNome(String nome)
{
this.nome=nome;
}
public String getNome()
{
return this.nome;
}
public void setRisultato(String vincitore)
{
this.risultato = "Il vincitore di "+this.getNome()+" :\n"+vincitore;
}
public String getRisultato() {
return this.risultato;
}
public Gara(String nome)
{
this.setNome(nome);
this.setRisultato("Corsa non terminata");
creaGrigliaDiPartenza();
}
public void creaGrigliaDiPartenza()
{
Pilota uno = new Pilota("Luca");
Pilota due = new Pilota("Daniela");
Pilota tre = new Pilota("Martina");
Pilota quattro = new Pilota("Alessia");
Auto autoNumeroUno = new Auto("Ferrari",uno);
Auto autoNumeroDue = new Auto("Mercedes", due);
Auto autoNumeroTre = new Auto("Redbull",tre);
Auto autoNumeroQuattro = new Auto("Renault",quattro);
griglia[0] = autoNumeroUno;
griglia[1] = autoNumeroDue;
griglia[2] = autoNumeroTre;
griglia[3] = autoNumeroQuattro;
}
public void CorriGara()
{
int rand= (int) (Math.random()*4);
Auto vincente = griglia[rand];
vincente.dammiDettagli();
}
}