菜鸟问题
java中怎样在控制台读入一个字符,注意是一个字符,而不是字符串? --------------------编程问答-------------------- import java.io.*;import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
DataInputStream in = new DataInputStream(System.in);
char ch = in.readChar();
System.out.println(ch);
}
}
--------------------编程问答-------------------- readChar() --------------------编程问答-------------------- read
public int read(char[] cbuf,
int off,
int len)
throws IOException将字符读入数组的某一部分。
此方法实现 Reader 类相应 read 方法的常规协定。另一个便捷之处在于,它将通过重复地调用底层流的 read 方法,尝试读取尽可能多的字符。这种迭代的 read 会一直继续下去,直到满足以下条件之一:
已经读取了指定的字符数,
底层流的 read 方法返回 -1,指示文件末尾(end-of-file),或者
底层流的 ready 方法返回 false,指示将阻塞后续的输入请求。
如果第一次对底层流调用 read 返回 -1(指示文件末尾),则此方法返回 -1。否则此方法返回实际读取的字符数。
鼓励(但不是必须)此类的各个子类以相同的方式尝试读取尽可能多的字符。
一般来说,此方法从此流的字符缓冲区中获得字符,根据需要从底层流中填充缓冲区。但是,如果缓冲区为空、标记无效,并且所请求的长度至少与缓冲区相同,则此方法将直接从底层流中将字符读取到给定的数组中。因此多余的 BufferedReader 将不必复制数据。
指定者:
类 Reader 中的 read
参数:
cbuf - 目标缓冲区
off - 开始存储字符处的偏移量
len - 要读取的最大字符数
返回:
读取的字符数,如果已到达流末尾,则返回 -1
抛出:
IOException - 如果发生 I/O 错误
补充:Java , Java EE