我想知道我可以做些什么来等待多个不同的用户输入关键字,同时允许我的程序的其他部分继续进行,我现在所拥有的是一个只是用Scanner监听的线程,但是我遇到的问题是当我想要多个参数时,可以继续监听,直到程序退出,当调用1个参数时,它停止寻找输入。这是我目前正在处理的代码:
new Thread(() -> {
String in = scan.nextLine().toLowerCase();
switch(in) {
case "kill":
System.exit(0);
break;
case "quote":
HttpGet req = new HttpGet(BASE_URL + "venues/" + venue + "/stocks" + stock + "/quote");
req.setHeader(new BasicHeader("X-Starfighter-Authorization", AUTH_KEY));
try {
HttpResponse res = getClient().execute(req);
String JSONRes = CharStreams.toString(new InputStreamReader(res.getEntity().getContent()));
if(res.getStatusLine().getStatusCode()!=200) {
System.out.println(res.getStatusLine().getStatusCode());
}else {
System.out.println("OK");
}
System.out.println(JSONRes);
} catch (IOException e) {
e.printStackTrace();
}
break;
}
}).start();
感谢您对我的问题提供任何帮助!
答案 0 :(得分:0)
使用while(true)
循环,如@ 11thdimension所说。这可能不是最好的解决方案,因为它是一个繁忙的等待循环,但它应该按预期工作。