增加十六进制值 (JAVA)

发布于 2024-07-12 12:02:17 字数 46 浏览 6 评论 0原文

你能在Java中增加一个十六进制值吗? 即“十六进制值”=“十六进制值”++

can you increment a hex value in Java? i.e. "hex value" = "hex value"++

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

随波逐流 2024-07-19 12:02:17

这取决于十六进制值的存储方式。 如果您有字符串中的十六进制值,请将其转换为整数,递增并转换回来。

int value = Integer.parseInt(hex, 16);
value++;
String incHex = Integer.toHexString(value);

It depends how the hex value is stored. If you've got the hex value in a string, convert it to an Integer, increment and convert it back.

int value = Integer.parseInt(hex, 16);
value++;
String incHex = Integer.toHexString(value);
九八野马 2024-07-19 12:02:17

简短回答:是的。 这是

myHexValue++;

更长的答案:您的“十六进制值”可能存储为整数。 将其转换为十六进制(而不是通常的十进制)字符串的工作是通过

Integer.toHexString( myHexValue )

十六进制字符串与

Integer.parseInt( someHexString, 16 );

M完成的。

Short answer: yes. It's

myHexValue++;

Longer answer: It's likely your 'hex value' is stored as an integer. The business of converting it into a hexadecimal (as opposed to the usual decimal) string is done with

Integer.toHexString( myHexValue )

and from a hex string with

Integer.parseInt( someHexString, 16 );

M.

故笙诉离歌 2024-07-19 12:02:17

“十六进制值”是什么意思? 您的值以什么数据类型存储?

请注意,int/short/char/... 并不关心您的值最初如何表示:

int i1 = 0x10;
int i2 = 16;

i1i2 将具有完全相同的内容。 Java(以及大多数其他语言)不关心常量/值的表示法。

What do you mean with "hex value"? In what data type is your value stored?

Note that int/short/char/... don't care how your value is represented initially:

int i1 = 0x10;
int i2 = 16;

i1 and i2 will have the exact same content. Java (and most other languages as well) don't care about the notation of your constants/values.

·深蓝 2024-07-19 12:02:17

是的。 无论如何,所有整数都是二进制的,因此如何声明它们并不重要。

int hex = 0xff;
hex++;  // hex is now 0x100, or 256
int hex2 = 255;
hex2++; // hex2 is now 256, or 0x100

Yes. All ints are binary anyway, so it doesn't matter how you declare them.

int hex = 0xff;
hex++;  // hex is now 0x100, or 256
int hex2 = 255;
hex2++; // hex2 is now 256, or 0x100
狼性发作 2024-07-19 12:02:17

数字的基数纯粹是 UI 问题。 在内部,整数存储为二进制。 只有当您将其转换为人类表示形式时,您才选择数字基数。 所以你的问题实际上可以归结为“如何增加整数?”。

The base of the number is purely a UI issue. Internally an integer is stored as binary. Only when you convert it to human representation do you choose a numeric base. So you're question really boils down to "how to increment an integer?".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文