我遇到的问题:
如果要将字符串的ArrayList导出到字符串数组中,可以尝试:
ArrayList<String> lines = new ArrayList<String>();
...
lines.add(line); // etc
...
return (String[]) lines.toArray();
并收到错误:
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
at wormbase.model.parser.FileParser.getDataObj(FileParser.java:45)
at wormbase.model.parser.ModelParser.main(ModelParser.java:18)
引用this,toArray()将返回一个对象列表而不是字符串。
return lines.toArray(new String[lines.size()]);
解决了这个问题。
编辑:感谢gangnamstyleoverflow
答案 0 :(得分:4)
尝试
lines.toArray(new String[lines.size()])
no args toArray返回一个Object [] check here,因此返回ClassCastException。 而重载toArray(T)则返回T []。