我正在尝试将十六进制字符串转换为十进制值(整数)。发现后
int i = Integer.valueOf(s, 16).intValue();
here ,
我实现了将一定大小的十六进制字符串转换为整数。
但是当字符串变大时,int或long就不起作用了,所以我尝试了BigInteger。
不幸的是,它返回一个错误:
JEncrytion.java:186: <identifier> expected
BigInteger part_user_hex = Integer.valueOf("45ffaaaaa", 16).int();
JEncrytion.java:186: illegal start of expression
BigInteger part_user_hex = Integer.valueOf("45ffaaaaa", 16).int();
JEncrytion.java:186: not a statement
BigInteger part_user_hex = Integer.valueOf("45ffaaaaa", 16).int();
代码片段是:
String[] parts = final_key.split("@") ;
String part_fixed = parts[0];
String part_user = parts[1];
BigInteger part_user_hex = Integer.valueOf("45ffaaaaa", 16).int();
System.out.println("");
System.out.println("hex value of the key : " + part_user_hex);
有什么想法要做什么吗?
3 个错误
最佳答案
您正在尝试将原始 int 值分配给 BigInteger 引用变量。那是行不通的。你想做的事情
BigInteger hex = new BigInteger("45ffaaaaa", 16);
此外,您已将类命名为 JEncrytion 而不是 JEncryption。
关于java - java中的大整数和十六进制字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19004410/