gavenyeah 2016-04-08 08:29 采纳率: 0%
浏览 4036
已结题

java中Scanner中close()的的使用方法?

 package hihocoder;
import java.util.Scanner;

public class CopyOfTrieTree {
    public static void main(String args[]) {
        CopyOfTrieTree m = new CopyOfTrieTree();
        m.getInput(true);
        System.out.println(2222);
        m.getInput(false);
    }

    public void getInput(boolean b) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        for (int i = 0; i < n; i++) {
            String s = in.next();
            if(b)
                System.out.println(s+0);
            else 
                System.out.println(s+1);
        }
        in.close();//为什么这里加上close(),程序就运行错误,不加就是对的
    }

}

如上程序,为什么加上scanner的关闭函数后,程序就运行错误,不加close函数,运行就是对的???

  • 写回答

5条回答 默认 最新

  • wangvic21 2019-08-08 18:40
    关注
     in.close()
    

    这句已经将System.in输入流关闭,再次调用getInput将会报错。

    评论

报告相同问题?