Eu tenho uma lista de objetos como List<Object> p
. Quero classificar essa lista em ordem alfabética usando o campo Nome do objeto. O objeto contém 10 campos e o campo de nome é um deles.
if (list.size() > 0) {
Collections.sort(list, new Comparator<Campaign>() {
@Override
public int compare(final Object object1, final Object object2) {
return String.compare(object1.getName(), object2.getName());
}
} );
}
Mas não há nada como String.compare ..?
object1
e object2
precisa ser do tipo Campaign
, e a função de comparação é object1.getName().compareTo(object2.getName())
.
List<Object>
e Comparator<Campaign>
. Você não pode fazer isso. Ou você tem List<Object>
e Comparator<Object>
ou List<Campaign>
eComparator<Campaign>
Object
s não têm nomes. Você quer dizer usar.toString()
?