为何这样写JAVA的Scanner没有等待我输入?
写了如下代码:但是启动的时候完全没有让我输入直接死循环.请问如何解决?
这是线程类:→
public class MultiThread implements Runnable
{
private volatile String values;
private volatile int swich;
private static final String CLOSE = "close";
@Override
public void run()
{
while (swich < 1)
{
Scanner sc = new Scanner(System.in);
values = sc.toString();
if(values.equals(CLOSE)){
System.out.println("close this thread!");
swich = 1;
continue;
}
System.out.println("input's :" + values);
}
}
}
这是运行类:→
public class ExecutorServiceSim
{
public static void main(String[] args)
{
int nThreads = 4;
ExecutorService es = Executors.newFixedThreadPool(nThreads);
es.submit(new MultiThread());
es.shutdown();
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
好吧,我没好好看代码,听楼下的吧,我的那个答案是错的
↓↓↓↓↓↓↓↓↓↓↓↓↓↓