Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从另一个类访问数组列表元素_Java_List_Arraylist - Fatal编程技术网

Java 从另一个类访问数组列表元素

Java 从另一个类访问数组列表元素,java,list,arraylist,Java,List,Arraylist,我有一个主类,它有一个ArrayList。此ArrayList具有通过迭代存储的一组值。我需要在另一个类中使用这个ArrayList(fileList&directoryList)值。我怎样才能做到这一点? 我不想将ArrayList移动到另一个类中 package com.filehandler; import java.io.File; import java.util.ArrayList; import java.util.List; public class FileFinder {

我有一个主类,它有一个
ArrayList
。此
ArrayList
具有通过迭代存储的一组值。我需要在另一个类中使用这个
ArrayList
(fileList&directoryList)值。我怎样才能做到这一点? 我不想将
ArrayList
移动到另一个类中

package com.filehandler;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class FileFinder {

    public static void main(String[] args) {
        // TODO Auto-generated method stub


        int directoryCount = 0;

        /* Declare Lists for Files & Directories */
        List<String> fileList = new ArrayList<String>();
        List<String> directoryList = new ArrayList<String>();

        // enter code here

        /* Set file location */

        File myFolder = new File("O:\\The Ultimate Book Shelf\\Technical");
        File[] myFileList = myFolder.listFiles();

        /* Iterate the folder to get the details of Files & Folders */

        for (int count = 0; count < myFileList.length; count++) {
            if (myFileList[count].isFile()) {
                // System.out.println("File " + myFileList[count].getName());
                fileList.add(myFileList[count].getName());

            } else if (myFileList[count].isDirectory()) {
                directoryCount++;
                // System.out.println("Directory " +
                // myFileList[count].getName());
                directoryList.add(myFileList[count].getName());
            } else {
                System.out
                        .println("There are no files or directories in the mentioned path. Please verify the folder location.");
            }
        }
        System.out.println("Total Files : "
                + (myFileList.length - directoryCount));
        System.out.println("Total Directories :" + directoryCount);
        System.out.println(fileList);
        System.out.println(directoryList);

    }    
}
package com.filehandler;
导入java.io.File;
导入java.util.ArrayList;
导入java.util.List;
公共类文件查找器{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
int directoryCount=0;
/*声明文件和目录的列表*/
List fileList=new ArrayList();
List directoryList=new ArrayList();
//在这里输入代码
/*设置文件位置*/
File myFolder=新文件(“O:\\The Ultimate Book Shelf\\Technical”);
File[]myFileList=myFolder.listFiles();
/*迭代文件夹以获取文件和文件夹的详细信息*/
对于(int count=0;count
另一个类可以在自己的构造函数中接受两个ArrayList,也可以作为特定方法的参数,具体取决于您尝试执行的操作。通过将它们作为参数传递,实际上将传递对在主函数中创建的ArrayList的引用,因此其他类将能够读取其中的值。

这取决于第二个类中如何使用数组。您有以下选项

  • 在第二个类的方法中使用数组
  • 将数组用作第二个类中的成员
  • 将数组用作第二个类中的静态成员
  • 对于1,只需将数组传递给方法。 对于2,可以将数组传递给构造函数并初始化类中的成员变量。 对于3,您可以设置like
    SecondClass.fileList=myFileList