У меня есть список объектов типа A, и я должен заказать его для поля A, которое имеет тип String.
public class A{
public String field1;
public Integer field2;
...
}
Если бы мне пришлось заказывать для поля int, я бы сделал так:
Collections.sort(listOfA, new Comparator<A>() {
public int compare(A p1, A p2) {
return p1.field2 - p2.field2);
}
});
Но, к сожалению, нужно упорядочить по полю типа String.
Как я могу это сделать?
compareTo
вообще опасно из-за целочисленного переполнения. Вместо этого используйтеInts.compare
из Google Guava. - person Roland Illig   schedule 31.07.2011>
=
и<
- person Matt Ball   schedule 31.07.2011<=>
вы должны явно указать операторы и результат. Мне проще просто написатьreturn Ints.compare(a, b)
. - person Roland Illig   schedule 01.08.2011