class Test
{
public static void main(String []args)
{
int i=0;
try
{
    //i=System.in.read()-48;这样输入的是12的话,i等于的是1了
                      i=System.in.read();//这样输入的1就是49了
}
catch(Exception e)
{

}

System.out.println("i="+i);
}
}
如果我想输入一个整数,该如何办,如果想输入其它类型的数存入相应类型的变量又该如何办?

解决方案 »

  1.   

    上面我得到的总是我输入的第一个字符的"啊谁CALL"码值了。刚学不太懂啊,我见System.out.print是用做输出的,感觉System.in.什么的应该有输入的吧,呵呵。。结果就弄出这个问题来了。
      

  2.   

    BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
    int i = Integer.parseInt(in.readLine());
    System.out.println(i);
      

  3.   

    我觉得学程序如果光看书没意思,如果能想到什么就试着去编什么就有光趣的多,所以不想给自己太多限止,呵呵。。说这的原因是不想让大家说我后面的没学到就想用了,我是想能用就用上一点也不会错,请帮我讲一下:
    BufferedReader in = new BufferedReader(new InputStreamReader(System.in));这句好像是后面章节讲到的流,谁能简单的讲一下它。
    int i = Integer.parseInt(in.readLine());这句定义i,Integer.parseInt是整型转换,in.readLine()呢?
      

  4.   

    thinking in java里面的.Java遵循标准I/O的模型,提供了Syetem.in,System.out,以及System.err。本书一直都在用System.out往标准输出上写,而它(System.out)是一个已经预先处理过的,被包装成PrintStream的对象。和System.out一样,System.err也是一个PrintStream,但是System.in就不对了,它是一个未经处理的InputStream。也就是说,虽然你可以直接往System.out和System.err上写,但是要想读System.in的话,就必须先做处理了。通常情况下,你会用readLine( )一行一行地读取输入,因此要把System.in包装成BufferedReader。但在这之前还得先用InputSteamReader把System.in转换成Reader。下面这段程序会打印你刚刚输入的那行东西://: c12:Echo.java
    // How to read from standard input.
    // {RunByHand}
    import java.io.*;
    public class Echo {
      public static void main(String[] args)
      throws IOException {
        BufferedReader in = new BufferedReader(
          new InputStreamReader(System.in));
        String s;
        while((s = in.readLine()) != null && s.length() != 0)
          System.out.println(s);
        // An empty line or Ctrl-Z terminates the program
      }
    } ///:~
     
      

  5.   

    谢谢了,先睡觉罗,明天看下后面的书,理解一下你所说的这些先。感觉要跟着java走,用对象的思想去理解它才行。
      

  6.   

    看看Think in java 里面有讲解
      

  7.   

    在JAVA1.5中有个Scanner类,它可以很方便的从终端读入数据,一下代码请楼主参考
    public class test
    {
         public static void main(String[] args)
         {
            Scanner in = new Scanner(System.in);
            int temp = in.nextInt();
          }
    }