I am using comparator to sort my list, but I got this error. Here is my code.
// The comparators
Comparator<List<Integer>> comparator_rows = new Comparator<List<Integer>>() {
    @Override
    public int compare(List<Integer> o1, List<Integer> o2) {
        if(o1.get(0) != o2.get(0))
            return Integer.compare(o1.get(0), o2.get(0));
        else if(o1.get(1) != o2.get(1))
            return Integer.compare(o1.get(1), o2.get(1));
        else if(o1.get(2) != o2.get(2))
            return Integer.compare(o1.get(2), o2.get(2));
        else if(o1.get(3) != o2.get(3))
            return Integer.compare(o1.get(3), o2.get(3));
        else if(o1.get(4) != o2.get(4))
            return Integer.compare(o1.get(4), o2.get(4));
        else if(o1.get(5) != o2.get(5))
            return Integer.compare(o1.get(5), o2.get(5));
        else if(o1.get(6) != o2.get(6))
            return Integer.compare(o1.get(6), o2.get(6));
        else 
            return Integer.compare(o1.get(7), o2.get(7));
    }
};
Collections.sort(list, comparator_rows);
// test print
for(int i=0; i<100; i++){
    Iterator<Integer> myListIterator = list.get(i).iterator();
    System.out.print(i + " ");
    while (myListIterator.hasNext()) {
        Integer val = myListIterator.next();     
        System.out.print(val + " ");
    }
    System.out.println();
}
And I got this results:
1 3000 299 1818 3000 3000 3000 1969 15426
1 3000 1499 1808 3000 3000 1174 1995 18813
1 3000 155 1927 3000 786 1107 783 26753
1 3000 1999 681 3000 355 1314 3000 28976
Does anyone know why I got not in order result starting dimension number 2? Thank you.
 
     
     
    