2

我目前有一个项目,它全部在一个类中,并且有多种方法。到目前为止,在每种方法中,我都必须在顶部使用这行代码来初始化我的扫描仪。从用户那里获取输入。

Scanner input = new Scanner(System.in);

我的问题是,有没有更有效的方法来做到这一点?

编辑:高效我的意思是,减少我必须编写这一行代码的次数?无论如何我可以初始化一次并重新使用它吗?

4

2 回答 2

1

它可能对你的表现的影响可以忽略不计,但如果你像我一样想要以神经质有效的方式来做这件事,我建议input你在课堂上做一个领域。这样,它将享受类范围并且可以访问您的所有方法。为了确保它始终是一个有效的扫描器(从不为空),它可能应该public static final

class TheClass
{
    public static final Scanner input = new Scanner(System.in);

    public void someMethod()
    {
          String text = input.readLine();
    }

    ...
}
于 2013-01-22T19:21:27.433 回答
0
Scanner input 

外部方法,并被所有人使用?也许将其创建为静态?

在构造函数中你可以把这段代码

input = new Scanner(System.in); 

或者如果您采用静态方式,您可以添加此代码

static Scanner input;

static {
  input= new Scanner(System.in); 
 }

这对你有用吗?

不确定您的目标到底是什么。

于 2013-01-22T19:15:57.397 回答