Java Char数组有什么用?

时间:2017-06-06 22:51:52

标签: java arrays string character

我有一个与以下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);
    }
}

在该代码中,我有一个BigInteger num,有21位数字。我将其转换为String然后转换为Char array。但我之前指定的char数组的长度只有10。那么这个char数组如何共包含21个字符???

我真的误解了这个事实。

还有一个问题,是否有任何方法可以直接将BigIntegers转换为char数组? :)

1 个答案:

答案 0 :(得分:3)

要回答第一个问题,变量Char(考虑更改变量名称)是对char数组的引用。您将其设置为指向大小为10的数组。但稍后,感谢...

Char = str.toCharArray();

...您正在将参考点指向另一个数组。原始数组不再具有与之关联的引用,并且是垃圾回收。

要回答第二个问题,您可以将功能级联在一行中。

char[] Char = num.toString().toCharArray();