java - ar.readLine 没有读取用户的输入?
问题描述
总结 1. 我正在导入 java.io.console,我的代码中没有任何错误,代码是正确的,我想,它在 eclipse 软件中出现了一些错误......错误:
Exception in thread "main" java.lang.NullPointerException at
loops.Escapey.main(Escapey.java:9)
编码:
package loops;
import java.io.Console;
public class Escapey {
public static void main(String[] args) {
Console ar = System.console(); // creating a new object for console
String name = ar.readLine("how old are you ?"); //reads a user input
System.out.printf("%s - pretty age",name);
}
}
输出:-我除了输出你几岁?18 18 - 漂亮的年龄但实际输出正在出错......线程“main”中的异常 java.lang.NullPointerException at loops.Escapey.main(Escapey.java:9)
解决方案
我假设您正在将其运行到某个 IDE 中。由于System.console
返回附加的控制台,如果你在 IDE 中运行它,它将返回 NULL。更好的方法是使用 Scanner 类。如果您真的想使用System.console
,则必须在某些控制台上对其进行测试。如果在 Mac 上,请运行终端。在 Linux 上,任何终端应用程序都可以工作。
推荐阅读
- python - 如何将变量从烧瓶部署到 html 表格中的单元格?
- kubernetes - 如何使用 kubectl 正确访问多个 Kubernetes 集群
- python - flask_socketio 导入不起作用,错误:没有名为 flask_socketio 的模块
- dart - 将地图列表转换为飞镖中的一张地图?
- javascript - 如何在黄瓜中生成本地报告?
- azure - Azure Kinect DK 操作范围
- kubernetes - 为什么 Kubernetes 不断恢复我的副本规范?
- typescript - 如何在 Typescript 中输入转换元组的函数
- javascript - Firestore 查询错误:对象作为反应子项无效
- elasticsearch - 弹性搜索查询不返回结果