public Object[][] sort() { ArraySorterEntry[] arraySorterEntries=getArraySorterEntries(); Arrays.sort(arraySorterEntries); Object[][] returnArray = new Object[getRows()][getCols()]; for (int i=0; i<getRows(); i++) { returnArray[i]=(Object[])arraySorterEntries[i].getSortedObject(); } return returnArray; }
return arrayValueToSort; } } /******************* end inner class */ /** Test code for ArraySorter **/ public static void main(String[] args) throws Exception { Object[][] array={{"7","8", "9"}, {"1","2", "3"}, {"4","5", "6"},}; System.out.println("unsorted array"); display(array); System.out.println("sorted array: asc on col 0"); ArraySorter sorter=new ArraySorter(array, 0, "asc"); display(sorter.sort()); System.out.println("sorted array: desc on col 0"); sorter=new ArraySorter(array, 0, "desc"); display(sorter.sort()); array=new Double[][]{{new Double(10),new Double(30)},{new Double(20),new Double(40)}};
private ArraySorterEntry[] getArraySorterEntries() { Object[] arrayToSort = getArrayToSort(); ArraySorterEntry[] arraySorterEntries=new ArraySorterEntry[getRows()]; for(int i=0; i<getRows(); i++) { arraySorterEntries[i] = new ArraySorterEntry(arrayToSort[i], (Comparable) array[i][sortCol]) ; } return arraySorterEntries; }