我有一个与下面的 BigInteger class
关联的 Java 代码,
import java.math.BigInteger;
public class Main
{
public static void main (String[] args)
{
BigInteger num = new BigInteger("123456789101112131415");
String str;
char []Char = new char[10];
str = num.toString();
Char = str.toCharArray();
System.out.println(str.length());
System.out.println(Char.length);
}
}
在该代码中,我有一个 21 位数字的 BigInteger
num。我将其转换为 String
然后转换为 Char array
。但我之前指定该 char 数组的长度仅为 10。那么这个 char 数组是如何总共容纳 21 个字符的呢???
我真的误解了事实。
还有一个问题,有没有一种方法可以将 BigIntegers 直接转换为 char 数组? :)
最佳答案
为了回答您的第一个问题,变量 Char
(考虑更改变量名称)是对 char
数组的引用。你将它设置为指向一个大小为 10 的数组。但是后来,感谢...
Char = str.toCharArray();
...您正在将引用指向另一个数组。原始数组不再具有与其关联的引用,并且被垃圾收集。
要回答你的第二个问题,你可以在一行中级联函数。
char[] Char = num.toString().toCharArray();
关于java - Java Char 数组有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44400901/