将扫描仪传递给方法

时间:2014-03-24 06:45:13

标签: java

这是一个基本的新手问题,我无法在网上找到一个好的答案。

我正在编写课程代码,我发现自己将扫描仪传递给了很多方法。

第一个问题一般来说是不赞成的吗?按键会在运行时中断吗?

        // Countinously prompt the user for a file.
    Scanner input = null;        
    while ( input == null ){
        System.out.println ( "What is the name of the file containing each student's responses to the 10 questions? " );
        try {
            input = new Scanner ( new File ( in.nextLine ( ) ));
        } catch ( FileNotFoundException e ) {
              System.out.println ( "You must input a valid file name." );
        }
    }

    //Print and store student answers
    ArrayList <String> answers = new ArrayList <String> ();
    studentResponses ( input, answers );

    //Analyze the answers
    ansAnalysis( input );

正如你所看到的那样,我将扫描仪传递给了一些方法,作为一个初学者就是不习惯它,并认为如果这是一种常见的技术,我会看到更多的例子。我想我可以创建另一个对象,但这似乎更容易。

1 个答案:

答案 0 :(得分:0)

如果这些只是单个类中的方法,您也可以将扫描器声明为实例变量(在所有方法之外声明它)。