gpt4 book ai didi

Java输入: Scanner or IOException

转载 作者:行者123 更新时间:2023-12-02 04:59:24 25 4
gpt4 key购买 nike

我正在学校上 Java 类(class),老师指出我应该使用 Scanner 类的实例从控制台读取输入。

示例:

import java.util.Scanner;

Public class ExampleName {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
char letter;

letter = input.next().charAt(0);
}
}

但是,我读到Java: A Beginner's Guide整个夏天以及整本书都说使用 System.in.read() 来读取输入。

示例:

import java.io.IOException;

Public class ExampleChar {
public static void main(String[] args) throws IOException {
char letter;

letter = (char) System.in.read();
}
}

哪种形式是正确的?我应该使用哪种形式来获取基本输入(char、int、double 等...)?

最佳答案

您是否注意到,在您的示例中,在初始化 Scanner 时,您传递了它 System.in

System.in 返回 InputStream 的实例(自 JDK1.0 起)

The "standard" input stream. This stream is already open and ready to supply input data. Typically this stream corresponds to keyboard input or another input source specified by the host environment or user.

Scanner(自 JDK1.5 起)使用来自 System.inInputStream 并解析 InputStream使用正则表达式,从而更轻松地访问 System.in

中包含的数据

Scanner(System.in) Constructs a new Scanner that produces values scanned from the specified input stream. Bytes from the stream are converted into characters using the underlying platform's default charset.

我建议使用Scanner,它通过提供以下方法使代码更干净且更易于维护:

next() - 返回下一个String

nextInt() - 返回下一个 int

nextDouble() - 返回下一个double

next(Pattern pattern) - 返回下一个匹配 pattern

的字符串

关于Java输入: Scanner or IOException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28434785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com