java - 如何将数组中的某些File元素复制到新的File数组?

标签 java arrays swing file list

这有可能实现吗?我有File foo [],它具有5个文件的列表。但是我只想将foo [0]和foo [3]复制到File bar []中,以便bar []仅包含2个元素。

我的代码获取foo []的长度,然后如果所选文件的索引等于i的索引,则将foo [i]添加到bar [i]。
这是我构建的可能的代码:

for(int i = 0; i < foo.length; i++){

    if(list_fileListing.getSelectedIndex() == i){
        bar[i] = foo[i];
    }
}


* list_fileListing.getSelectedIndex()保存JList中选定文件的列表。*
原因是我有一个可以在JList中选择的文件列表。从该列表中,我希望用户能够选择要附加到电子邮件的文件。

最佳答案

根据您的评论,您的JList包含String实例,而不包含File实例。所以你可以做类似的事情

List<String> selectedFilesAsStrings = list_fileListing.getSelectedValuesAsList();
//selectedFilesAsStrings will never be null, but can be empty
List<File> selectedFiles = new ArrayList<File>( selectedFilesAsStrings.size() );
for( String fileName : selectedFilesAsStrings ){
  selectedFiles.add( new File( fileName ) );
}
File[] bar = selectedFiles.toArray( new File[ selectedFiles.size() ] );


这将设置bar数组,使其指向包含所选File实例的数组

关于java - 如何将数组中的某些File元素复制到新的File数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10022187/

相关文章:

C:令人惊讶的数组结果

Java - 从表模型中删除选定的行

java - 测试 Swing 应用

java - 过滤一个JTable

java - 如何使用 XmlList 获取属性和数据列表

php - 从PHP INNER JOIN表创建多维JSON

java - 为什么总是调用 Spring 过滤器?

java - 使用数组打印时出现空指针异常

java - 使用Java ProcessBuilder删除Cassandra键空间

java - Ant是否保证文件集的顺序?