BufferedReader d= new BufferedReader(new InputStreamReader(System.in));
String s=d.readLine();在DOS下用键盘输入
刚好我也在做算法的东东 :)

解决方案 »

  1.   

    楼上正解。
    解释一下,将节点流转为处理流。效率更高。
    InputStreamReader接受输入,产生节点流。
    然后直接传给d。
    而d是处理流的类型。
      

  2.   

    怎么觉得JAVA中的输入输出处理没有
    C中的灵活
      

  3.   

    或者你可以用数组读入啊
    import java.io.*;
    public class ReadFromKB
    {
        public static void main(String args[])
        {
       try{
    char bArray[]=new char[40];
    String str;
    System.out.println("Enter something Using Keyborad:");
             str = new String(bArray);
    System.out.print("You entered:");
    System.out.println(str);
           }
           catch(IOException e)
           {
    System.out.println(e);
           } 
        }
    }
    这样你所读入的字符串就存储在bArray[]数组中,然后你再进行你的排序啊
      

  4.   

    可我要引用的是整型数组呀
    可不可以把以数组形式输入的字符串流转变为整型数组呢?
    有可能的话还能返回该数组中的元素个数
    haoqingshi,你的方案可行,但会不会麻烦了点,输入的数组元
    素及他们间的空格都一并存进了string[]bArray中,排系时就不能用数
    组下标对数据一一引用 
    还有再说明一下,因为这个数组排系要用数据结构课本上提供的现成的算法,并不是引用API中的sort函数,所以最终类型必须为整型