将字符串数组列表转换为char数组

时间:2018-04-24 04:15:31

标签: java arrays

我是Java新手并尝试学习从char ArrayList到char数组的转换。我很难转换它。

 List<Character> code = new ArrayList<Character>();
 code.add("A");
 code.add("B");
 code.add("C");

这将显示为[A, B, C]。我想要做的是将此数组列表转换为char[]数组。

我尝试了以下内容:

char[] list = null;
for(int i=0; i<code.size(); i++){
    list[i] = code.get(i);
    System.out.println(list[i]); // this has the error
}

我得到的错误是java.lang.NullPointerException。 我在网上搜索但我找不到“更好”的解决方案。其中大多数是从字符串到char的转换,反之亦然。也许我错过了一些关于此的重要知识。 再次,我是Java新手,任何帮助将不胜感激!

3 个答案:

答案 0 :(得分:1)

您收到null,因为您已将char数组初始化为char[] list = new char[code.size()];。相反,您可能希望将其初始化为与ArrayList相同的新char数组大小,如:

List<Character> code = new ArrayList<Character>(); code.add("A"); code.add("B"); code.add("C"); char[] list = new char[code.size()]; // Updated code for(int i=0; i<code.size(); i++){ list[i] = code.get(i); System.out.println(list[i]); }

以下是所有代码的外观。

var mynumber: Int!
mynumber = 5
var total = mynumber * 10  // 50

答案 1 :(得分:0)

使用前初始化char[]

之类的东西
char[] list = new char[code.size()];

由于列表变量初始化为null,因此您将获得NullPointerException

答案 2 :(得分:0)

试试这个。空指针异常是由于初始化为null

  List<Character> code = new ArrayList<Character>();
        code.add('A');
        code.add('B');
        code.add('C');


        Character[] arr = new Character[code.size()];
        arr = code.toArray(arr);

        System.out.println(arr);