java中System.in里的in到底有什么用? 30
System.in 即为系统的标准输入流,相当于 C 语言的 Standard Input。也就是说你用键盘在屏幕上输入的任何东西(包括回车空格各种功能键等)都属于 System.in。System.in 本身是一个 InputStream 类型,它包含有方法 read(),会返回下一个键盘输入的 ASCII 码值。读取 System.in 时,如果标准输入中没有任何内容,程序会暂停来等待用户输入内容。比如你使用
int a = System.in.read();
这时系统会暂停来等待你的输入。此时你打一个回车,那么 a 就会被赋值为 13,因为在 ASCII 码表中回车对应的十进制整数是 13。可以参见这个 ASCII 表:
Scanner 类是要读取输入流的,所以要给它提供一个输入流,而最常见的输入流就是用户的键盘输入,所以常把 System.in 标准输入流作为参数传给 Scanner。Scanner 会自动把读取到输入流中的所有字符转换为相应的字符串。
另一个常见的就是标准输出流 System.out,它与 System.in 相对,是一个 PrintStream 类,是负责向屏幕上输出的。最常用的方法就是 System.out.println()。
System 类中还有一个 PrintStream 是 System.err,它是标准错误流,是用来在屏幕上输出错误信息的。一般会将它与 System.out 分开,使得只要有错误就会立即在屏幕上输出。
广告 您可能关注的内容 |