在执行以下代码时,发现输入单个字符,却打印了3次。
class ForTest {
public static void main(String[] args)
throws java.io.IOException {
int i;
System.out.println("Press S to stop.");
for(i = 0; (char) System.in.read() != 'S'; i++)
System.out.println("Pass #" + i);
}
}
输出内容为:
a
Pass #0
Pass #1
Pass #2
w
Pass #3
Pass #4
Pass #5
1
Pass #6
Pass #7
Pass #8
2
Pass #9
Pass #10
Pass #11
原因是因为 System.in 将读取回车键作为换行符,而在 Windows 上回车内容有 : \r\n ,所以长度将为3,打印3次
文章版权声明:本文发表于2022-12-14 14:31:26,除非注明,否则均为
MB博客原创文章,转载或复制请以超链接形式并注明出处。
参观留言
查看留言