为什么一些开发人员以这种方式分配原始整数?诠释我= 0x0001

Why do some developers assign primitive integers this way? int i = 0x0001

我想知道为什么有些开发人员会这样分配整数?

  int i = 0x0001;

与以下行相比有什么优势吗:

  int u = 1;

恕我直言,第一个示例使代码更难理解。用 0x0001 赋值有什么好处?

代码方面没有优势; 0x0001 样式的解析速度并不快,并且生成的 class 文件在两种形式之间完全相同。

正如对您问题的一些评论所强调的那样,可能存在风格优势,但是,风格优势在旁观者的眼中。归根结底,很难争论赞成或反对 'I find this prettier'。

Base-16 有 4 位 (8 4 2 1) 表示,使解释器更简单。

关于支持 16 位表示的更多信息是有时您需要执行按位操作来打开和关闭标志,因此在这种情况下使用 Base-10 不是一个好主意。 虽然有一些与 Base-16 表示有关的安全问题。