List<String[]> list = new ArrayList<String[]>();
String str = "a b c";
list.add(str.split(" "));
基本上我想要一个{a,b,c}的数组但是这不起作用。我是否必须迭代并加载每个元素?我该怎么做?
我的错误输出如下所示:
[Ljava.lang.String;@3d4b7453
[Ljava.lang.String;@24c21495
答案 0 :(得分:4)
您的代码运行正常,但看起来您打印的内容错误。这样做:
for (String[] strs : list) {
System.out.println(Arrays.toString(strs));
}
只打印一个数组会为您提供类似于您所看到的输出。
答案 1 :(得分:1)
您可以使用Arrays.toString()
打印数组元素
System.out.println(Arrays.toString(list.get(0)));
或者迭代它们:
for(String s : list.get(0)) System.out.println(s);
答案 2 :(得分:1)
尝试
List<String[]> list = new ArrayList<String[]>();
String str = "a b c";
list.add(str.split(" "));
System.out.println(Arrays.toString(list.get(0)));
答案 3 :(得分:1)
我想你想用这种方式打印: -
List<String[]> list = new ArrayList<String[]>();
String str = "a b c";
list.add(str.split(" "));
System.out.println(Arrays.toString(list.get(0)));
打印: - [a, b, c]
答案 4 :(得分:0)
您可以使用Arrays.asList()
List<String> list = new ArrayList<String>();
String str = "a b c";
list.addAll(Arrays.asList(str.split(" ")));
打印结果如:
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}