import java.io.IOException;
public class Ip
{
public static void main(String args[])
{
try{
System.out.println(System.in.read()); //就是这里的玄机吧
}catch(IOException e){
}
}
}

解决方案 »

  1.   

    输出的是A的ascii码  A的ASCII码就是65
      

  2.   

    System.in.read()的返回值是int,所以调用的是 System.out.println(int v); System.out.println(T t); 是一个重载方法。
      

  3.   

    jdk文档说明:
    public abstract int read() throws IOException
    从输入流中读取数据的下一个字节。返回 0 到 255 范围内的 int 字节值。如果因为已经到达流末尾而没有可用的字节,则返回值 -1。在输入数据可用、检测到流末尾或者抛出异常前,此方法一直阻塞。 
    子类必须提供此方法的一个实现。 
      

  4.   

    嗯 这个前面的人解释的而很清楚了  就是A的ASCII码正好是65 你读取的int值  而且在计算机里面字符和ASCII码是映射好的
      

  5.   

    System.out.println((char)System.in.read());
    这样就能输出字符啦
      

  6.   


    import java.io.IOException;
    public class Ip
    {
        public static void main(String args[])
        {
        
            try{
            System.out.println((char)System.in.read()); //就是这里的玄机吧
            }catch(IOException e){
            }
        }
    }/* OUTPUT
    A
    A
      

  7.   

    回贴不是吵架,A的ASCII码值是65。
      

  8.   

    输出的是A的ascii码  A的ASCII码就是65 
    再加上
    System.in.read()的返回值是int,所以调用的是 System.out.println(int v); 
    所以就是65了
      

  9.   

    输出的是A的ascii码  A的ASCII码就是65 
    再加上
    System.in.read()的返回值是int,所以调用的是 System.out.println(int v); 
    这两个原因结果就是65了
      

  10.   

    System.in.read()的返回值是int
    'A'的ASCII码值是65
    所以System.in.read()返回的值是65.
    而System.out.println(65);输出的结果就是65
      

  11.   

    如果你想输出为字符型,可以改成这样:
    System.out.println((char)System.in.read());