0
void sortarray(final int index){
        Arrays.sort(data, new Comparator<Object[]>(){
            @Override
            public int compare(Object[] o1,  Object[] o2) {
                String[] a = (String[])o1;
                String[] b = (String[])o1;
                return a[index].compareTo(b[index]);
            }
        });

    }
2 5 LouieChef B 
2 6 Lawson C 
2 10 BakerSarah D 
2 11 SmothersSally A 
2 12 SillySall C 
2 13 Viper B

如何对列索引的二维字符串数组进行排序。
此代码不起作用...

4

1 回答 1

0

下面的代码应该可以工作

String[][] theArray = new String[][]{{"Enter values","Enter values"}, {more values, more values}};
Comparator<String[]> comparator= new Comparator<String[]>() {
       Arrays.sort(theArray, new Comparator<String[]>(){
                @Override
                public int compare(String[] o1,  String[] o2) {
                    return o1[0].compareTo(02[0]);
                }
            });
 Arrays.sort(theArray, comparator);

铸造应始终尽量避免。尽管使用您的方法(对象和强制转换为字符串)应该可以工作,但您的代码中可能还有其他错误。无论如何,如果您知道这是您将要排序的内容,最好明确告诉编译器您正在排序字符串。

于 2013-08-20T11:23:24.930 回答