在Java中似乎有多种执行I / O的方法。一个人如何决定使用哪个。
例如:

我可以通过以下两种方式通过stdin接受用户的输入:

方法1:

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    String input = "";
    try{
        System.out.println("Enter: ");
        input = br.readLine();

    }catch(IOException e)
    {
        e.printStackTrace();
    }


方法2:

        Scanner sc = new Scanner(System.in);
        System.out.println("Enter Scanner: ");
        input = sc.nextLine();
        System.out.println(input);


我很确定可能还有其他读取输入的方法。选择用于特定类型的操作的方法时,有什么可遵循的准则(从文件,套接字,stdin中读取)

最佳答案

准则是您使用具有所需API的类。如果您只是阅读行,请按BufferedReader.readLine()。如果您正在读取令牌并希望为您转换令牌,请Scanner。如果要读取二进制数据,请DataInputStream。如果要读取对象,请ObjectInputStream.readObject()。如果您正在阅读XML,则为XML解析器。等等等等。如果您正在阅读Java,请JavaCC ;-)

关于java - 阅读Java中的下一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8175401/

10-13 09:12