我正在尝试使用BigInteger类从二进制数打印十进制数。我正在使用BigInteger类的BigInteger(String val,int radix)构造函数将给定的二进制值转换为十进制值,但它打印的是构造函数中传递的精确二进制值。WAHT是错误吗?代码如下:
System.out.print("Ente the decimal number:");
s=String.valueOf(sc.nextInt());
BigInteger i=new BigInteger(s,10);
System.out.println(i);
如果您试图将输入字符串解析为二进制,则应编写:
BigInteger i=new BigInteger(s,2);
打印时
System.out.println(i);
默认情况下将以十进制显示。
但是,将数字读取为int
然后转换为string
并传递给biginteger
构造函数是没有意义的,因为这会限制起作用的数字的范围。
尝试:
s = sc.nextLine();
BigInteger i=new BigInteger(s,2);
System.out.println(i);
实际上,您打印的不是二进制数的十进制值
打印的值是字符串val
的精确十进制表示形式
根据您在此语句中添加的radix
,它将如下所示:
BigInteger i = new BigInteger("11101", 10); // 11101
11101
此输出实际上是十进制数,而不是二进制数
为了得到预期的结果,您应该将radix
值更改为2
之后,它将打印二进制数的十进制值:
BigInteger i = new BigInteger("11101", 2);
System.out.println(i);
输出:
29
我正在尝试将数字从十进制值转换为其IEEE 752形式。例如: 我写了这个方法: 有个问题我解决不了,我再举个例子说清楚。 但是当数字为负数时,例如 我收到以下错误: 这意味着我的代码可以完美地处理正数(包括零),但如果是负数,代码就会崩溃。问题出在哪里? 笔记 我想我可以用这种方式解决我的问题 检查是否有一个字符At(0)等于1 如果是(numero.charAt(0)==1),则删除第一个字符
本文向大家介绍如何将十六进制转换为十进制?,包括了如何将十六进制转换为十进制?的使用技巧和注意事项,需要的朋友参考一下 而十六进制数是具有值是16的数字系统中的一个并且它具有唯一的16个码元:0,1,2,3,4,5,6,7,8,9和A,B,C,d,E ,其中A,B,C,D,E和F分别是十进制值10、11、12、13、14和15的单位表示。而十进制系统是最熟悉的号码系统向公众开放。它是10的基数,只
本文向大家介绍如何将十进制转换为十六进制?,包括了如何将十进制转换为十六进制?的使用技巧和注意事项,需要的朋友参考一下 十进制是公众最熟悉的数字系统。它是基数10,只有10个符号-0、1、2、3、4、5、6、7、8和9。而十六进制是计算机或数字系统中最常见的数字系统颜色表示。它是基数16,只有16个符号:0、1、2、3、4、5、6、7、8、9和A,B,C,D,E,F。这些A,B,C,D ,E,F分
我想知道如何将舞蹈方法的十进制结果包含到灯光方法中。例如,在这个程序中,如果我输入5F,十进制结果将是95。我希望95在light方法中显示为静态int变量,以便转换为二进制数。如果你能告诉我如何将十六进制数限制在2位数以内,那也会很有帮助。感谢阅读! } }
问题内容: 我正在寻找一种简单的方法来在Swift中将二进制数转换为十进制数。例如,二进制的“ 10”变为十进制的“ 2”。 谢谢, 问题答案: 更新 为 斯威夫特2: 所有整数类型有 现在的方法,该方法根据给定的基数将字符串转换为整数: (先前的答案:) 您可以简单地使用BSD库函数,该函数根据给定的基数将字符串转换为数字:
问题内容: 我想将二进制字符串转换为数字Eg 这怎么可能?谢谢 问题答案: 该函数将字符串转换为数字,并使用第二个参数来指定字符串表示形式的基数: 看到它在行动 。