Il cast ha precedenza rispetto all'operatore di moltiplicazione. Quindi, prendendo ad esempio questa istruzione:
codice:r = (int) Math.random() * 5;
Prima viene eseguito il cast a int del valore restituito da Math.random() e poi la moltiplicazione per 5.
Risultato: sempre 0 perchè Math.random() restituisce un valore compreso fra 0 (incluso) e 1 (escluso), quindi il cast a int porterà il valore sempre a 0... a questo punto lo puoi moltiplicare per quel che vuoi sarà sempre 0.
Correzione:
codice:r = (int) (Math.random() * 5);
Ciao.![]()



Rispondi quotando