Consider a list of Person object. There are two ways to sort the list . Using Comparator or Comparable.
class
Person
implements
Comparable{
public
String name;
public
String lastName;
public
Person(String name, String lastName){
this
.name=name;
this
.lastName=lastName;
}
public
String getName(){
return
name;
}
public
String getLastName(){
return
lastName;
}
public
int
compareTo(Object obj){
Person p = (Person)obj;
return
this
.name.compareTo(p.getName);
}
public
static
void
main(String arg[]){
List myList =
new
ArrayList();
myList.add(
new
Person(
"Robert"
,
"USA"
));
myList.add(
new
Person(
"Andy"
,
"UK"
));
myList.add(
new
Person(
"Harish"
,
"India"
));
Collections.sort(myList);
for
(Person person : myList){
System.out.println(
"My name is "
+person.getName());
}
}
}
Output is :
My name is Andy
My name is Harish
My name is Robert
public
sortList() {
List personList = getListofPerson();
Collections.sort(personList,
new
Comparator() {
public
int
compare(Person e1, Person e2) {
return
e2.name.compareTo(e1.name);
}});
Collections.sort(personList,
new
Comparator() {
public
int
compare(Person e1, Person e2) {
if
(e1.age > e2.age )
return
1
;
if
(e1.age < e2.age)
return
-
1
;
else
return
0
;
}});
}
0 comments:
Post a Comment