[英]Accessing array list elements from another class
我有一个具有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);
}
}
您的其他类可以在自己的构造函数中接受两个ArrayList,也可以作为特定方法的参数,具体取决于您要执行的操作。 通过将它们作为参数传递,您实际上将传递对您在主函数中创建的ArrayList的引用,因此另一个类将能够读取其中的值。
这取决于如何在第二类中使用数组。 您有以下选择。
对于1,您可以简单地将数组传递给方法。 对于2,您可以将数组传递给构造函数,并初始化类中的成员变量。 对于3,您可以设置诸如SecondClass.fileList = myFileList;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.