黑马程序员技术交流社区

标题: 今天去面试java实习碰到了一点问题,郁闷。 [打印本页]

作者: 蒙武辉    时间: 2012-2-22 23:01
标题: 今天去面试java实习碰到了一点问题,郁闷。
从键盘输入一组数字,然后按大小输出来。例如输入8822cba  输出来2288abc。谁可以说说你们的答案。
作者: 陈丹阳    时间: 2012-2-22 23:13
按ASCII码排序则可
作者: 黄秋    时间: 2012-2-22 23:17
温昌寿 发表于 2012-2-22 23:08
public static void main(String[] args) {

                String s="8822cba";

LZ要求排序,不是逆序。
作者: 马胜平    时间: 2012-2-22 23:22
看好题目要求是重键盘输入一组数值在排序好输出到屏幕下面代码我写的可以使用但并不完善,没对特殊字符考虑
  1.         public static void main(String[] args) throws IOException {
  2.                 BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
  3.                 BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
  4.                 String line=null;
  5.                 while((line=br.readLine())!=null){
  6.                         char[]array=line.toCharArray();
  7.                         Arrays.sort(array);
  8.                        
  9.                                 bw.write(array);
  10.                                 bw.flush();
  11.                        
  12.                        
  13.                 }

  14.         }
复制代码

作者: 沈样    时间: 2012-2-22 23:24
你可以按ascII进行比较排序,先将字符串转化为字符数据再比较
作者: H07000223    时间: 2012-2-22 23:31
我是用集合来实现的,希望你帮到你~~~亲

public static void main(String[] args)
{
        Scanner scan=new Scanner(System.in);
        System.out.println("请输入:");
        String str=scan.next();
       
        ArrayList list=new ArrayList();
       
        for(int i=0;i<str.length();i++)
        {
                list.add(str.charAt(i));
        }
       
        Collections.sort(list);
        System.out.println(list);
}
作者: 蒙武辉    时间: 2012-2-22 23:45
楼主做得不错,今天我用数组做了,结果被面试官踢了。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2