2014-09-24 68 views
-1

我正在製作一個我的世界MOD,我不知道哪一個更值得推薦。哪一個更有記憶效率?

Block[] blocks = new Block[] {BlueBlock, MeatBlock, ....}; 
for (Block bls : blocks) 
    GameRegistry.registerBlock(bls, bls.getUnlocalizedName().substring(5)); 

GameRegistry.registerBlock(BlueBlock, "BlueBlock"); 
GameRegistry.registerBlock(MeatBlock, "MeatBlock"); 
GameRegistry.registerBlock(..., "..."); 
+0

感謝您的回答!我只是意識到,Java有GC ... – 2014-09-24 09:48:18

回答

1

第二個會使較少的計算,並且所述第一多一個automatisation,其是用於懶惰更好。 在內存方面,它不應該有太大的變化,只有塊會儲存一些數據,之後應該被銷燬,(如果是垃圾回收器的話)。無論如何,這是一個非常小的差異。但是,如果處理成千上萬個,第二個將會更快,但寫起來會很痛苦。

2

後者更有效率。第一個創建數組,然後遍歷數組並註冊其中的內容,而第二個只註冊所有內容,但性能幾乎不明顯,因爲這發生在Forge加載的PRE_INITIALIZATION階段。