我正在制作一个使用Scanner
对象的终端游戏。到目前为止,我做事的方式还没有问题。但是现在,我想添加“作弊码”,为此,我需要第二个Scanner
。一个将用于玩家需要输入以前进的指定关键字,另一个将用于作弊代码,我将它们设置在两个单独的Thread
中,以免干扰。 / p>
问题是,当我这样做时,由于有两个Scanner
,所以希望玩家键入两行,但是我希望它只要求一行,并且该行是否是作弊项-code,它会执行与指定关键字不同的操作。 有什么方法可以做到,而无需完全重写我的代码?
这就是我制作Scanner
对象的方法:
// show available keywords
System.out.println("[keyword1] [keyword2] [keyword3]\n");
Scanner User = new Scanner(System.in);
String user = User.nextLine();
if (user.contentEquals("keyword1")) {
// code
}
(我对其他Thread
的作弊代码也做了同样的操作
我还用了两个public static Scanner
都用过的Thread
进行了尝试,然后为关键字创建了一个String
,并为作弊代码创建了一个java.lang.IndexOutOfBoundsException
,但是,由于某些荒谬的原因,导致抛出了!null === null or !'23' === null ... false always.
if (!localStorage.getItem("sec") === null) {
this.setState({
seconds: localStorage.getItem("sec")
});
}
if (!localStorage.getItem("min") === null) {
this.setState({
seconds: localStorage.getItem("min")
});
}
if (!localStorage.getItem("hour") === null) {
this.setState({
seconds: localStorage.getItem("hours")
});
}
。
谢谢!
答案 0 :(得分:0)
一个扫描仪就足够了。
String input1 = User.next();
String input2 = User.next();
输入此值,并用您输入Hello World
的空格分隔。
Hello
进入input1
,然后World
进入input2