2010-11-22 14 views

Répondre

5

En théorie, Math.random() vaudra toujours une valeur supérieure ou égale à 0 et strictement inférieur à 1.

donc, en utilisant (int) Math.ceil(Math.random() * 5) devrait vous donner réellement 0, 1, 2, 3, 4, 5. Cependant, toute valeur retournée par Math.random() autre que exactement 0 sera donner une valeur de 1 ou plus après l'appel à Math.ceil() - si vous verrez 0 souvent disparaître. (Vous serez chanceux si vous jamais voir, mais c'est certainement possible.) Voir 5 est facile - vous l'aurez à tout moment Math.random() renvoie une valeur supérieure à 0,8.

Y a-t-il une raison pour laquelle vous n'utilisez pas Random.nextInt() à la place?

+0

Bien qu'il devrait vous donner très, très rarement. – rob

+0

Je ne suis pas familier avec Random.nextInt() - est-ce une meilleure façon de générer un # aléatoire? – Sapp

+0

@rob: J'ajoutais juste ça :) @Sapp: Oui. –