程式設計技巧乾貨筆記 關於一些運算子的效率

2021-08-07 11:57:30 字數 808 閱讀 6445

下面有兩行實現同樣功能的**

<1>  str = str + 'i';

<2>  str += 'i';

它們都只是在字串的末尾新增了乙個  'i'

但是就效率而言, <2> 是優於 <1> 的

其效率相差在於返回值

前者需要將加法運算的結果構造乙個新的字串返回再賦值給 str ,而且 『+=』 運算的返回值是 str 的引用

後者直接在當前字串上修改然後返回 str 的引用

另外,自加減運算子也是類似的 ( 當然,前提是不會直接使用它的返回值 )

a++  會返回自身的值

++a  會返回自身的引用

如果 a 不是乙個 int 而是乙個迭代器,就會有效率的差異了

一些運算子

int a 3 int b a 先把a的值賦給b,a再自增 int c a a先自增,再把值賦給c system.out.println a system.out.println b system.out.println c 結果輸出 535 冪運算,計算2 3 double pow math.po...

C 的一些運算子

參見 c 高階程式設計 第四版 is 運算子可以檢查物件是否與特定的型別相容。相容 表示物件是該型別,或者派生於該型別。例如,要檢查變數是否與 object 型別相容 int i 10 if i is object int和從 object 繼承而來的其他 c 資料型別一樣,表示式 i is obj...

LinuxC關於運算子的一些問題

1.c語言運算子的分類?1 算術運算子 用於各類數值運算,包括加 減 乘 除 求餘 或稱模運算,自增 自減 2 關係運算子 用於比較運算,包括大於 小於 等於 大於等於 小於等於 和不等於 3 邏輯運算子 用於邏輯運算,包括與 或 非 4 位操作運算子 參與運算的量,按二進位制位進行運算,包括位與 ...