我只是想知道如何使用 J2ME CLDC 1.0 MIDP 2.0 生成随机数?
基本上,每次从手机屏幕单击菜单项生成时,我想生成一个 14 位随机数。
我对 J2ME 不是很熟悉,但是Javadoc显示 Random 类是 CLDC api 的一部分,因此您可以像这样生成一个 14 位数字:
public static void main(String[] args) {
Random r = new Random();
long l = r.nextLong();
System.out.println(String.format("%015d", l).substring(1, 15));
}
Random r = new Random();
r.nextInt(bottomX-topX)+topX; //will give you the next random integer in range [bottomX,topX]
您可以使用 MIDP 的Random类,或CLDC 1.1中的类
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);
}
您可以使用这种通用方法来计算任何范围内的随机数。