使用BigInteger,我如何传递我的二进制数的符号来获得它作为一个int



我正在尝试将二进制字符串转换为有符号十进制数。我正试图找出一种方法,用10位二进制字符串做到这一点。

String i = kb.next();
int p = new BigInteger(i, 2).intValue();

上面的代码将二进制字符串转换为十进制数字,但是您需要输入符号和32位字符串。我是否可以传递一个10位的字符串,它会返回正确的十进制数。

我检查了你给的代码,它仍然可以工作。但是,如果仍然希望传递32位字符串,则可以使用以下代码:

while(i.length()<32){
    i = "0"+i;
}

此代码在给定字符串之前用0填充以生成32位整数。

最新更新