Java将十六进制字符串转换为BigInt

37

您好,我正在尝试将十六进制字符串转换为大整数,例如String hexStr = "1b0ee1e3",最好将hexStr转换为十进制形式的大整数。

我可以将字符串转换为大整数,但当字符串包含十六进制值时,就会遇到问题。


有些东西不太合理。'BigInt的十进制形式'这种说法是不存在的。BigInt的形式是二进制的。 - user207421
当我将一个十六进制形式的字符串传递给一个大整数时,它会被转换为它的十进制形式!试一下。 - user524156
1个回答

75

你尝试过这样吗:

BigInteger bigInt = new BigInteger(hexString, 16);
例如:
import java.math.*;

public class Test {
    public static void main(String[] args) {
        String hexStr = "1b0ee1e3";
        BigInteger bigInt = new BigInteger(hexStr, 16);
        System.out.println(bigInt); // Prints 453960163
    }
}

太好了,我所缺少的就是将输入声明为十六进制的16!!谢谢Jon。 - user524156

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接