J2ME: Come generare numeri casuali?
Domanda
Volevo solo sapere come faccio a generare numeri casuali con J2ME CLDC 1.0 MIDP 2.0?
In sostanza voglio generare un numero casuale di 14 cifre ogni momento in cui la voce di menu Genera viene cliccato dallo schermo del cellulare.
Soluzione
Non sono davvero familiarità con J2ME, tuttavia la Javadoc dimostra che la classe Random fa parte delle API CLDC, in modo da poter generare un numero a 14 cifre in questo modo:
public static void main(String[] args) {
Random r = new Random();
long l = r.nextLong();
System.out.println(String.format("%015d", l).substring(1, 15));
}
Altri suggerimenti
Random r = new Random();
r.nextInt(bottomX-topX)+topX; //will give you the next random integer in range [bottomX,topX]
import java.util.Random;
private static void showRandomInteger(int aStart, int aEnd){
Random generator = new Random();
generator.setSeed(System.currentTimeMillis());
if ( aStart > aEnd ) {
throw new IllegalArgumentException("Start cannot exceed End.");
}
//get the range, casting to long to avoid overflow problems
long range = (long)aEnd - (long)aStart + 1;
// compute a fraction of the range, 0 <= frac < range
long fraction = (long)(range * generator.nextDouble());
int randomNumber = (int)(fraction + aStart);
System.out.println("Generated : " + randomNumber);
}
è possibile utilizzare questo metodo generale per il calcolo numeri casuali in ogni gamma.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow