数组列表<文件>到数组文件[]
Posted
技术标签:
【中文标题】数组列表<文件>到数组文件[]【英文标题】:Array List<File> to Array File[] 【发布时间】:2013-02-15 00:31:01 【问题描述】:我必须将 ArrayList 形成一个“正常”的 Array File[]。
File[] fSorted = (File[]) x.toArray();
错误:Cast Exception
Exception in thread "Thread-5" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.io.File;
如何将列表 x
作为 File[ ]-List 返回?
--
我的功能:
private File[] sortFiles(File[] files);
ArrayList<String> allFiles = new ArrayList<String>() ;
for (int index = 0; index < files.length; index++)
File afile = new File(files[index].toString());
allFiles.add(afile.getPath().toString());
java.util.Collections.sort(allFiles);
ArrayList<File> x = new ArrayList<File>();
for(int i = 0; i< allFiles.size(); ++i)
x.add(new File(allFiles.get(i)));
File[] fSorted = (File[]) x.toArray();
return fSorted;
【问题讨论】:
Convert ArrayList<String> to String []的可能重复 Convert list to array in java的可能重复 【参考方案1】:用途:
File[] fSorted = x.toArray(new File[x.size()]);
【讨论】:
+1 我自己,我更喜欢Foo[] array = new Foo[list.size()]; list.toArray(array);
只是为了可读性:)以上是关于数组列表<文件>到数组文件[]的主要内容,如果未能解决你的问题,请参考以下文章