有沒有一種直接的方法如何在ActionScript3中使用按位運算將負數轉爲正數?我只是覺得我已經在某個地方讀過,它比使用Math.abs()
或乘以-1
更快。還是我錯了,這是一天後學習字節和位運算的夢想?在Actionscript 3中,是否可以將負數轉爲正數?
我所看到的是,按位NOT
差不多的伎倆:
// outputs: 449
trace(~(-450));
如果有人發現這個問題,並有興趣 - 在500萬次迭代~(x) + 1
比Math.abs(x)
快50%。
ABS是不一樣的NOT + 1,ABS unsigns,NOT + 1,通過則無效。所以如果你傳遞一個正數,你會得到不同的結果。 – ekerner