java中如何输入字符
在 Java 中输入字符的方法
使用 Scanner 类读取单个字符
Scanner 类可以用于从标准输入读取字符,但需要结合 next() 或 nextLine() 方法获取字符串后提取第一个字符。

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符: ");
char ch = scanner.next().charAt(0);
System.out.println("输入的字符是: " + ch);
scanner.close();
}
}
使用 System.in.read() 读取单个字符
System.in.read() 方法可以直接读取一个字符,但返回的是 ASCII 码值,需要强制转换为 char 类型。
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
System.out.print("请输入一个字符: ");
char ch = (char) System.in.read();
System.out.println("输入的字符是: " + ch);
}
}
使用 BufferedReader 读取字符
BufferedReader 提供了更灵活的输入方式,可以读取单个字符或整行输入。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.print("请输入一个字符: ");
char ch = (char) reader.read();
System.out.println("输入的字符是: " + ch);
reader.close();
}
}
注意事项
- 使用
Scanner时,next()方法会读取直到遇到空格或换行符,而nextLine()会读取整行输入。 System.in.read()和BufferedReader.read()可能会抛出IOException,需要处理异常。- 输入多个字符时,只有第一个字符会被读取,其余字符会留在输入缓冲区中。







