Java开发中有时候用十六进制定义常量有什么好处?什么时候考虑使用十六进制?

山哥 发布于 2010/08/02 13:06
阅读 5K+
收藏 2

大家好,

我看到了红薯大哥的一个帖子中定义的常量:

  1. public final static transient byte OPT_ADD      = 0x01;  
  2. public final static transient byte OPT_UPDATE   = 0x02;  
  3. public final static transient byte OPT_DELETE   = 0x04

常量是十六进制的,我也偶尔会在其他地方的源码中看到使用十六进制定义常量,

我很想知道这样定义有什么好处? 一般什么情况下定义常量优先考虑使用 十六进制?

 

加载中
0
红薯
红薯

十六进制在可能牵扯到位操作的时候,更加直观,因为一个数字代表4位二进制0或1

例如 0x02 相当于 00000010 ,而十进制就没有那么直观。

当然了,你举的例子中并没有涉及到位操作的需要,只是个人习惯而已。

0
郑雨涵
郑雨涵

我觉得这里要关注下transient的用法,至于16进制,对于常量来说,跟int比,并无太多区别。

还有就是可以用enum。

0
曾赛
曾赛

用作掩码的时候比较多,如权限掩码

0
山哥
山哥

哦,原来是这样啊,谢谢各位大哥,呵呵@

0
返回顶部
顶部