12 回答

TA貢獻(xiàn)1854條經(jīng)驗(yàn) 獲得超8個(gè)贊
第一種看起來(lái)不亂,避免在其他地方被調(diào)用而修改內(nèi)容,而且在for循環(huán)結(jié)束時(shí)j就會(huì)被銷毀,而第二種方法要等到整個(gè)方法結(jié)束時(shí)才被銷毀,這樣就節(jié)省了內(nèi)存。另外,不管在哪里聲明字段,第一次編譯的時(shí)候都會(huì)先把所有的字段聲明存放在程序的開頭。

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊
第二種好。
第一種情況是:變量會(huì)不斷地被聲明,分配空間,銷毀空間。
第二種情況是:變量只聲明一次,但是生命周期很長(zhǎng),只有在變量聲明部分的“}”之后才會(huì)自動(dòng)被釋放。可以優(yōu)化的是,在循環(huán)結(jié)束后,手動(dòng)銷毀這個(gè)變量。
但是第二種方法消耗的內(nèi)存和CPU時(shí)間會(huì)少些。

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個(gè)贊
你說(shuō)的是C#的話,沒有區(qū)別,會(huì)被編譯優(yōu)化
你說(shuō)的是JS的話,恐怕在外部聲明比較好

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊
第二種方式更好!
第一種方式,變量 j 會(huì)循環(huán)聲明 100 次,分配內(nèi)存空間,然后再銷毀,浪費(fèi)資源。
第二種方式,變量 j 僅聲明一次,循環(huán)結(jié)束后就會(huì)釋放。

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
同一樓觀點(diǎn),不過對(duì)于現(xiàn)在的服務(wù)器來(lái)說(shuō),這點(diǎn)區(qū)別CPU還是可以承擔(dān)的,并且還是C#寫的。
- 12 回答
- 0 關(guān)注
- 418 瀏覽
添加回答
舉報(bào)