Java 如何向数组中添加许多内容?

Java 如何向数组中添加许多内容?,java,arrays,Java,Arrays,我需要向一个数组中添加大约30000个文件名。 我怎么能这么做 目前它只是在控制台中打印它们: File folder = new File("D:\\image"); File[] listofFiles = folder.listFiles(); for (int i = 0; i < listofFiles.length; i++) { if (listofFiles[i].isFile()) { System.out.println

我需要向一个数组中添加大约30000个文件名。 我怎么能这么做

目前它只是在控制台中打印它们:

File folder = new File("D:\\image");
    File[] listofFiles = folder.listFiles();

for (int i = 0; i < listofFiles.length; i++) {
        if (listofFiles[i].isFile()) {
            System.out.println("File "+listofFiles[i].getName());
        }else if (listofFiles[i].isDirectory()) {
            System.out.println("Directory "+listofFiles[i].getName());
        }
    }

您可以创建一个新列表,并将文件名放入其中

List<String> fileNames = new ArrayList<String>();
File folder = new File("D:\\image");
File[] listofFiles = folder.listFiles();

for (int i = 0; i < listofFiles.length; i++) {
        if (listofFiles[i].isFile()) {
            fileNames.add(listofFiles[i].getName());

            System.out.println("File "+listofFiles[i].getName());
        } else if (listofFiles[i].isDirectory()) {
            System.out.println("Directory "+listofFiles[i].getName());
        }
    }
在这里使用streams会很好,但我相信这个解决方案对您来说会更清晰。之后,您可以通过以下方式将列表转换为数组:String[]fileNamesArray=fileNames.toArraynew String[0]


您已经有一个文件数组。目标是什么?可能使用folder.list而不是folder.listFilesarray[i++]=thing;关键词是关于。使用ArrayList,您不必担心有多少文件。