1

我阅读了一些开源代码,经常遇到这样的变量声明:

private static final int MAX_LITERAL = 1 << 5;

这是 2^5 (32),对于某些人来说,将其声明为“32”比“1 << 5”更具可读性。对为什么使用位移运算符完成它有什么好的解释吗?

4

1 回答 1

3

出于可读性目的,该数字很可能用于按位运算。

虽然确实是 32,但如果你不认为它是 ,也许你会明白其中的道理32,而是a number with the fifth bit set, and the others unset

于 2013-07-04T19:29:56.163 回答