我需要在java中显示静态文件夹层次结构。我已经定义了一个文件夹类,必须使用相同的文件夹类。不允许使用File
类!类文件夹是:
class Folder
{
boolean isFile;
String folderName;
List<Folder> subFolders;
}
我尝试使用的代码是:
class LisF
{
public static void main(String args[])
{
Folder a=new Folder("C:/hello");
Folder b=new Folder("C:/one");
Folder c=new Folder("C:/two");
a.subFolders.add(b);
b.subFolders.add(c);
Iterator itr = a.subFolders.iterator();
Iterator itr1= b.subFolders.iterator();
while(itr.hasNext()) {
Object element = itr.next();
//System.out.print("The list is "+(Folder)element.putFName());
System.out.println("The lis is "+element);
}
}
}
它运行并输出为Folder @ 1234,毫无疑问它给出了对象的名称。但我需要传递的字符串的名称,即显示你好的子文件夹,它应该显示一个,子文件的一个应该显示两个!但相反,我得到了对象名称!!!!
答案 0 :(得分:0)
您应该在所需的类中实现toString
方法,以将对象打印为String
。在这种情况下,您需要在Folder
类中实现它:
class Folder {
//class definition...
@Override
public String toString() {
//implementation sample
return this.folderName;
}
}