1)我想知道为什么我不能这样做:
ArrayList<String> entries = new ArrayList<String>();
entries.add("entry");
String[] myentries = (String[])entries.toArray();
怎么了(您可能会忽略第二行代码,这与问题无关)
2)我知道可以使用以下代码达到我的目标:
ArrayList<String> entries = new ArrayList<String>();
entries.add("entry");
String[] myentries = new String[entries.size()];
myentries = entries.toArray(myentries)
这是将ArrayList转换为String Array的首选方法吗?有更好/更短的方法吗?
非常感谢你 :-)
最佳答案
第一个示例返回Object[]
,因为列表不知道您想要的数组类型,因此无法将其转换为String[]
您可以使用
String[] myentries = entries.toArray(new String[entries.size()]);