问题:使用扫描仪类我无法使用 IntelliJ IDE 在控制台上写入文本。 输出:我的程序一直在运行,我需要手动终止它。
项目结构:Maven 附加信息:使用 TetNG
以下文件是在src文件夹下创建的。 基本程序.Java
public class BasicPrograms {
public void takeInpFrmUser() {
Scanner sc = new Scanner(System.in);
System.out.println("Please enter the number");
int num = sc.nextInt();
System.out.println("User has entered= " + num);
sc.close();
}
}
以下文件是在 TEST 文件夹下创建的。 用户输入.Java
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
public class UserInput {
BasicPrograms basicObj;
@BeforeClass
public void createObj() {
basicObj = new BasicPrograms();
}
@Test
public void verifyUserInput() {
basicObj.takeInpFrmUser();
}
}
我是一个想自学java的初学者。任何帮助将不胜感激。非常感谢:)
我尝试过的:参考 java doc
https://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html
我的期望:我应该能够在控制台上写整数文本。 但是我的程序一直在运行,我需要手动终止它。
请参考下图输出。
删除这一行:
sc.close();
不要关闭基于
Scanner
的System.in
。您正在终止对控制台的访问。该访问权限无法恢复。
否则,你的代码是好的。在 Ideone.com 上查看您的 code 运行.