我有一个对象数组(文件列表).如何遍历此数组并删除一些对象(使用Java) - 具体取决于条件?
File[] files = file.listFiles();
for(File f: files) {
if(someCondition) {
// remove
}
}
Run Code Online (Sandbox Code Playgroud)
Jea*_*art 23
我认为解决问题的最佳Java方法是将数组转换为列表并使用允许删除对象的迭代器:
List<File> files = new ArrayList<File>(Arrays.asList(file.listFiles()));
Iterator<File> iterator = files.iterator();
while(iterator.hasNext()){
File currentFile = iterator.next();
if(someCondition){
iterator.remove();
}
// other operations
}
Run Code Online (Sandbox Code Playgroud)
如果需要,您甚至可以将其再次转换为数组 - 尽管处理列表可能更方便......:
File[] filesArray = files.toArray();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17321 次 |
| 最近记录: |