我目前有一个项目,它全部在一个类中,并且有多种方法。到目前为止,在每种方法中,我都必须在顶部使用这行代码来初始化我的扫描仪。从用户那里获取输入。
Scanner input = new Scanner(System.in);
我的问题是,有没有更有效的方法来做到这一点?
编辑:高效我的意思是,减少我必须编写这一行代码的次数?无论如何我可以初始化一次并重新使用它吗?
它可能对你的表现的影响可以忽略不计,但如果你像我一样想要以神经质有效的方式来做这件事,我建议input
你在课堂上做一个领域。这样,它将享受类范围并且可以访问您的所有方法。为了确保它始终是一个有效的扫描器(从不为空),它可能应该public static final
:
class TheClass
{
public static final Scanner input = new Scanner(System.in);
public void someMethod()
{
String text = input.readLine();
}
...
}
Scanner input
外部方法,并被所有人使用?也许将其创建为静态?
在构造函数中你可以把这段代码
input = new Scanner(System.in);
或者如果您采用静态方式,您可以添加此代码
static Scanner input;
static {
input= new Scanner(System.in);
}
这对你有用吗?
不确定您的目标到底是什么。