如何将数字的二进制表示形式的java链表转换为数字的十进制表示形式的String



我在java中构建了一种新的数字类型,它将二进制数的表示形式作为位的链接列表。我的类的toString打印这个数字的二进制形式,但我想创建一个函数来打印这种数字的十进制表示,为了绕过数字类型的限制,我希望它是字符串形式。问题是,我永远不能把整数放在int或long中,因为我的数字类型可以容纳任何大小的整数。如果有人需要看课程或其中的一部分来提供帮助,我可以把它发给他们。

查看BigInteger。由于您的数据结构允许存储任意大小的二进制数,BigInteger允许存储任意尺寸的整数。

由于您能够将位列表转换为String,因此您可能需要使用此构造函数public BigInteger​(字符串val,整数基数(。例如,假设YourClass的对象yourObject包含位1 0 1 1 0的列表,该列表使用您实现的toString方法打印为"10110"。现在:

YourClass yourObject; // 10110
BigInteger bi = new BigInteger(yourObject.toString(), 2);
System.out.println(bi); // Prints out 22

相关内容

  • 没有找到相关文章

最新更新