如何继续制作in-BlueJ Java文件管理器

时间:2017-06-22 01:12:00

标签: java bluej

我知道这是一个noob程序,但我慢慢感到困惑。 'down'函数就像cd一样,'up'函数就像cd ..

我不知道如何允许用户创建文件或文件夹。我尝试使用arrayLists而不是数组,但无法解决错误。任何帮助将不胜感激。

    import java.util.Scanner;
    class FileManager {
    //array of arrays will go here
    String Dir[] = {"UserOne"};
    String SystemFolders [] = {"Documents","","",};
    String SubFiles [] = {"","","","","",""};
    String Nav [][] = { Dir, SystemFolders, SubFiles};
    int levelCounter = 0;
    public void main(String[]args)   {
        Scanner sc = new Scanner (System.in);
        System.out.println("Enter a command");
        String command = sc.next();
            if (command.compareTo("down") == 0)
                down();
            //else if is on the way
    }
    void down ()    {
        //This will execute when the command is 'down'
        System.out.println(Nav[++levelCounter]);
    }
    void up ()  {
        //This will execute when the command is 'up'. It acts like cd..
        System.out.println(Nav[--levelCounter]);
    }
}

1 个答案:

答案 0 :(得分:0)

如果这是您的程序的入口点,那么您需要将main方法声明为静态,如此

public static void main(String[] args)

然后,要在main方法中访问FileManager类中的方法,您需要在main方法中创建类的实例。喜欢这个

public static void main(String[]args)   {
    FileManager fm = new FileManager();  // Creates an instance
    Scanner sc = new Scanner (System.in);
    System.out.println("Enter a command");
    String command = sc.next();
    if (command.equals("down")) // equals will suffice in this case
                                // or equalsIgnoreCase() if you dont want case to be a problem
        fm.down(); // Notice now this calls the down method from the instance
    //else if is on the way
}

然后以create files为例,或者以create folders

为例