程序员何时以及为何在 java 中使用八进制和十六进制文字?

when and why does programmers use octal and hexadecimal literals in java?

作为初学者,我正在学习 java,我学习了文字。我知道八进制和十六进制文字包含 3 位和 4 位。我们可以使用它们而不是二进制文字来编写更具可读性的代码。我们可以在二进制或大整数文字中使用 _(下划线)以使其可读。

那为什么我们实际上使用十六进制或八进制?

考虑处理 32 位数据

int x = 0b1111_1111_0000_0000_1111_1111_0000_0000;

使用十六进制

int x = 0xFF00FF00;

可读性更强,输入更容易。八进制在野外非常罕见,但同样适用。

你使用 hex 因为它比 binary 在做 bit-manipulation 时更短。不知道为什么有人会使用 octal.

例如从 RGB int 中提取绿色值时,您将使用 (rgb >> 8) & 0xFF,因为 0xFF25503770b11111111 好得多在这种情况下。