目前正在制作一个简单的Android SurfaceView基础游戏。有很多电话是这样的:for performace,static class or regular object creation
mSplatGraphic[idx] = new Random().nextInt(SPLAT_COUNT);
我的问题是,这将是更好的性能明智的,有一个“静态随机班”是这样的:
public class SysRandom {
private static final Random RANDOM = new Random();
public static int nextInt(int limit) {
return RANDOM.nextInt(limit);
}
}
,并使用此代码来代替:
mSplatGraphic[idx] = SysRandom.nextInt(SPLAT_COUNT);
我的想法是,用简单的类,创建Random对象一次,并没有被不断创建和销毁,但我不知道那是什么是真正发生一次的代码是补偿失败并正在运行。
这可能是java noob问题,对不起!我自学成才,很高兴删除这个问题,如果有人只是指向我的链接:]
而不是每次创建一个新的随机,为什么不有一个类字段? – panini
@panini啊,是的。这会起作用,甚至比创建课堂更好。 – Tigger