首页 >Java >java教程 >为什么 System.console() 返回 Null,Java 输入有哪些替代方案?

为什么 System.console() 返回 Null,Java 输入有哪些替代方案?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-18 11:02:19619浏览

Why Does System.console() Return Null, and What Are the Alternatives for Java Input?

来自 System.console() 的 Java 输入

使用 Console 类时,在调用 System.console() 时可能会遇到 null 对象)。在继续之前,确定是否需要进行任何调整至关重要。

不同环境中的 System.console()

使用 System.console() 获取输入有特定的要求限制:

  • IDE环境:

    • System.console() 在 Eclipse 或 IntelliJ 等 IDE 中返回 null,因为它们提供自己的用户输入机制。
  • 命令行环境:

    • 直接从命令行执行时,System.console() 会按预期运行。

替代解决方案

如果 System.console() 不是一个选项,请考虑以下内容替代方案:

  • 缓冲输入(非 IDE):
System.out.print("Enter something:");
String input = System.console().readLine();
  • BufferedReader(IDE 和命令行) :
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Test {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Enter String");
        String s = br.readLine();
    }
}

以上是为什么 System.console() 返回 Null,Java 输入有哪些替代方案?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn