当前位置: 首页 > 面试题库 >

如何在Java中将二进制字符串转换为以10为基数的整数

孙元明
2023-03-14
问题内容

我有一个表示二进制数(不带前导零)的字符串数组,我想将其转换为相应的基数10。考虑:

binary 1011 becomes integer 11
binary 1001 becomes integer 9
binary   11 becomes integer 3   etc.

最好的进行方法是什么?我一直在探索java.lang.number。*,而没有找到直接转换方法Integer.parseInt(b)对String产生一个整数EQUAL
…例如,1001变为1,001而不是9
…并且似乎不包括输出基数的参数。toBinaryString转换方向错误吗?我怀疑我需要进行多步转换,但似乎找不到正确的方法或子类组合。我也不确定前导零或缺少前导零的程度是否会成为问题。有人有什么好的指导指向我吗?


问题答案:

您需要指定基数。有一个过载Integer#parseInt()允许您。

int foo = Integer.parseInt("1001", 2);


 类似资料:
  • 我有一个字符串数组,表示二进制数(不带前导零),我想将其转换为相应的10进制数。考虑: 最好的方式是什么?我一直在探索java。lang.number.*没有找到直接的转换方法<代码>整数。parseInt(b)生成一个等于字符串的整数。。。e、 1001变成了1001而不是9。。。而且似乎不包括输出基的参数转换方向错误。我怀疑我需要进行多步转换,但似乎找不到方法或子类的正确组合。我也不确定前导零

  • 假设我有以下字符串: 如何将其转换为二进制数(0和1)?诀窍在于:我不允许使用内置方法进行转换。这必须用数学方法来完成。我不知道从哪里开始。谁能给我指出正确的方向吗? 编辑1:我看过这个问题,人们建议使用getBytes(字符串)、字符集UTF-8,我nteger.toBinaryString。我不允许使用任何这些方法进行转换。我也没听说过36垒。

  • 问题内容: 当将int转换为二进制时,如何将其输出为8个字符,当前仅显示1且缺少7个零 码 示例输出到0000 0001 问题答案: 我不确定这是否是您的意思,但是类似 会产生

  • 我如何将一个写为二进制的字符串转换为二进制(字节数组)? 如果我有一个字符串: 下面是当我将二进制设置为字节数组时发生的情况(字节数组返回48,这是ASCII) 我不擅长解释,所以希望上面的例子足以告诉你我想要什么。

  • 问题内容: 我想将二进制字符串转换为数字Eg 这怎么可能?谢谢 问题答案: 该函数将字符串转换为数字,并使用第二个参数来指定字符串表示形式的基数: 看到它在行动 。

  • 问题内容: 我有一些表示二进制数据的字符串格式的数据(例如‘0x0002’)。是否有一些函数或技巧可以将它们从原义字符串转换为二进制?也就是说,我希望‘0x0002’变为0x0002,而SELECT CAST(‘0x0002’ASBINARY(20))显然不会这样做。我确实提出了一个痛苦的缓慢过程,该过程涉及建立SQL语句并将其分配给变量并执行该变量(例如“EXEC(@Query)”),但是我正在