import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
class Person{
private String empName=null;
private String empAdd=null;
private int age=0;
Person(String name, String add){
empName=name;
empAdd=add;
}
public String getEmpAdd() {
return empAdd;
}
public String getEmpName() {
return empName;
}
public void setEmpAdd(String string) {
empAdd = string;
}
public void setEmpName(String string) {
empName = string;
}
static Comparator sortByEmpName = new Comparator(){
public int compare(Object person, Object anotherPerson) {
String empName1 = ((Person) person).getEmpName();
String empName2 = ((Person) anotherPerson).getEmpName();
String empAdd1 = ((Person)person).getEmpAdd();
String empAdd2 = ((Person)anotherPerson).getEmpAdd();
System.out.println("sorting");
if(!empName1.equals(empName2))
return empName1.compareTo(empName2);
else
return empAdd1.compareTo(empAdd2);
}
};
static Comparator sortByEmpAdd = new Comparator(){
public int compare(Object person, Object anotherPerson) {
String empName1 = ((Person) person).getEmpName();
String empName2 = ((Person) anotherPerson).getEmpName();
String empAdd1 = ((Person)person).getEmpAdd();
String empAdd2 = ((Person)anotherPerson).getEmpAdd();
System.out.println("sorting");
if(!empAdd1.equals(empAdd2))
return empAdd1.compareTo(empAdd2);
else
return empName1.compareTo(empName2);
}
};
public String toString(){
return empName + ":"+ empAdd;
}
}
public class MyCollection{
public MyCollection() {
super();
}
public static void main(String[] args) {
ArrayList a = new ArrayList();
Person p = new Person("A","C");
a.add(p);
p=null;
p = new Person("A","A");
a.add(p);
p=null;
p = new Person("C","B");
a.add(p);
p=null;
Object[] o = a.toArray();
Arrays.sort(o,Person.sortByEmpName);
for(int i =0; i
System.out.println((Person)o[i]);
}
}
I think you can check this programm. you will get help from it.
|