在Java中使用Arrays.sort()时出错

时间:2015-10-18 16:59:29

标签: java arrays

我正在使用 - >

String ar[]=new String[n];
Arrays.sort(ar,new Comparator<String>());

我收到如下所示的错误

The method sort(T[], Comparator<? super T>) in the type Arrays is not applicable for the arguments (String[], Comparator<String>)

我该怎么办?

2 个答案:

答案 0 :(得分:4)

比较器是一个界面。因此,您需要匿名实例化并提供实施

Arrays.sort(ar, new Comparator<String>() {

        @Override
        public int compare(String o1, String o2) {
            // TODO Auto-generated method stub
            return o1.compareTo(o2);
        }
    });

答案 1 :(得分:0)

除了提供你自己的Comparator实现(如@SURESH ATTA答案中所见),你可以简单地使用String实现Comparable接口(Source)的事实,你可以使用这样的sort方法:

String[] strings = { " A ", " D ", " E ", " B ", " Z " };
Arrays.sort(strings);