int a=System.in.read();
  a的值和我从键盘输入的值不一样
          我得怎么改才能使之一样呢

解决方案 »

  1.   

    read读进来的是你输入内容字符编码的第一个字节如果输入的是ASCII码字符的话,可以使用以下方法输出原来的内容char a = (char)System.in.read();
      

  2.   

    查查API,read()方法返回的值是什么意思.....
      

  3.   

    System.in.read()
    它只读入一个字节,并且返回的是ASCII码而INT型是4字节
    比如,无论你输入1、10、还是11、100
    输出始终是49,49就是1的ASCII码
      

  4.   

    read读进来的是你输入内容字符编码的第一个字节
    就是读取的是你输入内容字符编码的字节如果输入的是ASCII码字符的话,可以使用以下方法输出原来的内容 
     BufferedReader bis  = new BufferedReader(new InputStreamReader(System.in));
                int a = Integer.parseInt(bis.readLine());
                System.out.println(a);
                bis.close();