read()的示例

时间:2014-08-25 05:00:29

标签: java

我写了一个简单的程序:

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
Integer first = in.read();
System.out.println(first);

但是例如当我输入13时,打印49 !!!为什么?

3 个答案:

答案 0 :(得分:3)

read()方法从输入中读取char13'1'49int值您需要使用<{1}} char

'1'

注意:+处理输入验证

答案 1 :(得分:1)

使用in.read()时,它将返回element的int值。然后插入13它将读取单个字符。所以49是char 1

的int值

您应该使用以下

  BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  Integer first = Integer.valueOf(in.readLine());
  System.out.println(first);

阅读more

答案 2 :(得分:1)

read()方法返回它读取的单个字符的int值

  

public int read()            throws IOException读取单个字符。覆盖:在类Reader中读取返回:读取的字符,作为整数   范围0到65535(0x00-0xffff),如果流的末尾有,则返回-1   已达成

因此,如果您想阅读整行,请尝试

Integer first = Integer.parseInt(in.readLine());