目前正在製作一個簡單的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