控制台的数字输入输出
我想读入1-个数字,然后输出总是把这些数字转成了unicode
我如何处理???import java.io.*;class aaaa
{
  public static void main(String[] args)throws IOException  
 {
  int []b=new int[10];
  aaaa m=new aaaa();
  for(int i=0;i<10;i++)
  b[i] = System.in.read(); 
   for( int i=0;i<10;i++)
  System.out.println(b[i]);
  
   
 
  
 }
}

解决方案 »

  1.   

    输出的时候在b[i]前加上强制类型转换。System.out.println((char)b[i]);
      

  2.   


    try
    {
        BufferReader br = new BufferReader(new InputStream(System.in));
        String str = br.readLine();
        System.out.println(str);
    }catch(IOException e)
    {
        e.printStackTrace();
    }
      

  3.   

    你要怎么样呢?看程序没看出来,是不是这样?import java.io.*;class aaaa
    {
    public static void main(String[] args)throws IOException 
    {
    int []b=new int[10];
    aaaa m=new aaaa();
    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));for(int i=0;i<10;i++)
    b[i] = Integer.parseInt(br.readLine());
    for( int i=0;i<10;i++)
    System.out.println(b[i]);
    }
    }
      

  4.   

    我刚没说清楚
    输入10个数字,中间还要写一些函数,函数中这些数字可以按照数字类型加减运算的,然后输出你们说的好像都不行啊,我试过了,怎么输出都是1  1   ....我这里输入输出有问题
    import java.util.*;
    import java.io.*;class Get
    {
     
     
     int max(int []a)//get max     
     {  int ma=0;
         for(int i=0;i<9;i++)
      {
       if(a[i]<=a[i+1]) 
       ma=a[i+1];
       else
        ma=a[i];
       
      }return ma;
     }
     int min(int []a)//get min      
     {int i,mi=0;
      for(i=0;i<9;i++)
      {
       if(a[i]<=a[i+1]) mi=a[i];
       else mi=a[i+1];
      
      } return mi;
     }
     public static void main(String[] args)throws IOException  
     {
         int []b=new int[10];
      Get m=new Get();  BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  for(int i=0;i<10;i++)
      b[i] = System.in.read(); 
       for( int i=0;i<10;i++)
      System.out.println(b[i]);
      
      
      System.out.println("the max of ten is:"+m.max(b));
      System.out.println("the min of ten is:"+m.min(b));
     
        
     }
    }
      

  5.   

    哦我知道了再问一下Scanner in = new Scanner(System.in);
    这个可以输入输出吗
      

  6.   

    再问一下Scanner in = new Scanner(System.in);
    这个可以输入输出吗可以输入,不能输出。
      

  7.   

    那我怎么这么写有错误呢?
    import java.io.*;class aaaa
    {
      public static void main(String[] args)throws IOException  
     {
      int []b=new int[10];
      
      for(int i=0;i<10;i++)
      Scanner b[i] = new Scanner(System.in);
     
       for( int i=0;i<10;i++)
      System.out.println((char)b[i]);
     
      
     }
    }
      

  8.   

    import java.util.*;
    public class test
    { /**
     * @param args
     */
    public static void main(String[] args)
    {
    // TODO Auto-generated method stub
    int[] a=new int[10];
    Scanner s=new Scanner(System.in);
    for(int i=0;i<a.length;i++)
    {
    a[i]=s.nextInt();
    }

    }}
    这样就可以输入10个数,并且可以存入整型数组。
    你题目的要求能再说详细点吗,没太听明白。
      

  9.   

    angelinsky() 的那个老是有提示can not resolve symbol class Scanner
      

  10.   

    我的意思是输入10个数字判断最大的和最小的
    我用
    BufferedReader给折腾出来了import java.util.*;
    import java.io.*;class Get
    {
     int max(int []a)//get max
     {  int i,j,ma=a[0];
       for(i=0;i<=9;i++)
       {
         if(a[i]>ma)
       ma=a[i];
      }return ma;
     }
     int min(int []a)//get min
     {int i,j,mi=0;mi=a[0];
       for(i=0;i<=9;i++)
      {
       if(a[i]<=mi)
       mi=a[i];  } return mi;
     }
     public static void main(String[] args)throws IOException
     {
      Get m=new Get();
          BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
              int b[]=new int[10];
              String inLetter=null;
              for(int i=0;i<10;i++)
              {
                     b[i]=Integer.valueOf(in.readLine()).intValue();          }
       System.out.println("the max of ten is:"+m.max(b));
      System.out.println("the min of ten is:"+m.min(b));
     }
    }
      

  11.   

    好奇怪啊改为
      for (int i = 0; i < 10; i++) {
           b[i] = System.in.read();
    就只能输入5个数字了,而且结果还怪怪的
    import java.util.*;
    import java.io.*;class Get {  int max(int[] a) { //get max
        int i, j, ma = a[0];    for (i = 0; i <= 9; i++) {
          if (a[i] > ma)
            ma = a[i];
        }
        return ma;
      }  int min(int[] a) { //get min
        int i, j, mi = 0;    mi = a[0];
        for (i = 0; i <= 9; i++) {
          if (a[i] <= mi)
            mi = a[i];    }
        return mi;
      }  public static void main(String[] args) throws IOException {
        Get m = new Get();
       // BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        int b[] = new int[10];
       // String inLetter = null;
        for (int i = 0; i < 10; i++) {
        //  b[i] = Integer.valueOf(in.readLine()).intValue();
        b[i] = System.in.read();
        }
        System.out.println("the max of ten is:" + m.max(b));
        System.out.println("the min of ten is:" + m.min(b));  }
    }
      

  12.   

    你用System.in.read()来读,一次只读入一个字节,连你的分隔符也算一个字符,所以你只能输入五个字符。
    如输入12345678910只能存入的数据是1 2 3 4 5 6 7 8 9 1。如果想读入任意的数字,我觉得可能需要一些格式判断,如果把他们全部读进来以后,转成字符型,然后用split方法以空格来分隔。
      

  13.   

    让读出来的Unicode ,减去 48就可以了,不过这个System.in.read();一次这能读取一个字符。