有没有办法计算两个十六进制值而不将其转换为int?例如:
String sHex = "f7c0";
String bHex = "040000000";
有没有办法计算两个十六进制值而不将其转换为int?例如:
String sHex = "f7c0";
String bHex = "040000000";
十六进制值是整数 - 仅以十六进制而不是十进制表示。
你不能这样做吗?
int sHex = 0xf7c0;
int bHex = 0x040000000;
如果不是,那么您实际上的意思是:
String sHex = "f7c0";
String bHex = "040000000";
在这种情况下,最快的方法仍然是将它们转换为整数,使用类似的东西Integer.parseInt(sHex, 16);
是的,您可以使用包含十六进制值表示的字符串进行某些(准确地说:任何)计算。
一个简单的例子是检查相等性。为此,您将两个字符串都转换为小写,去掉所有前导零并应用 String.equals 方法。
其他计算更困难。但是,嘿,当我年轻的时候,我们所有的计算都是用纸和笔或黑板上的粉笔进行的,因此原则上任何可以计算的东西,即使所有数据都是字符串的形式。