先看看基本區別:
i++ :先在i所在的表達式中使用i的當前值,後讓i加1
++i :讓i先加1,然後在i所在的表達式中使用i的新值
看一些視頻教程裡面寫for循環的時候都是寫 ++i 而不是 i++,上網搜索了一下,原來有效率問題
++i相當於下列代碼
i += 1; return i;
i++相當於下列代碼
j = i; i += 1; return j;
當然如果編譯器會將這些差別都優化掉,那麼效率就都差不多了。
再給大家詳細說下++i 與 i++ 的區別
1、++i 的用法(以 a=++i ,i=2 為例)
先將 i 值加 1 (也就是 i=i+1 ),然後賦給變量 a (也就是 a=i ),
則最終 a 值等於 3 , i 值等於 3 。
所以 a=++i 相當於 i=i+1 ,a=i
2、i++ 的用法(以 a=i++ ,i=2 為例)
先將 i 值賦給變量 a (也就是 a=i ),然後 i 值加 1 (也就是 i=i+1 ),
則最終 a 值等於 2 ,i 值等於 3 。
所以 a=i++ 相當於 a=i , i=i+1
3、++i 與 i++
a=++i 相當於 i++ , a=i
a=i++ 相當於 a=i , i++
4、++i 與 i++ 單獨使用時,相當於 i=i+1
如果賦給一個新變量,則 ++i 先將 i 值加 1 ,而 i++ 先將 i 賦給新變量。
以上所述是小編給大家介紹的PHP中的i++與++i的區別及效率的全部敘述,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!