Java中将0x开头的十六进制字符串转换成十进制整数
1、Integer.toString(int i)
由于input(输入数据)是以0x开头的字符串,并不是整型。因而在用
String s = Integer.toString(input);
时用会由于参数类型不匹配而无法正常运行。而
String s = Integer.toString(0x8100); System.out.println(s);
则可正常输出0x8100的10进制值33024.
2、Integer.parseInt(String s, int radix)
该函数要求参数s为全数字。如“8100”,而对于“0x8100"则不能进行运算。所以对于ox开头的字符串需要先截取数字
子串,再进行换算。
long out = Integer.parseInt(input.substring(2, input.length()), 16);
即可将0x开头的十六进制字符串转换成十进制整数。