Hi Friends
Here we are comparing added objects to list using Comparator Interface.For this First declare the Employee class as shown below:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Employee1 {
private int id;
private String name;
private int age;
public Employee1(int id,String name,int age) {
//super();
this.age = age;
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
/*public void setId(int id) {
this.id = id;
}*/
public String getName() {
return name;
}
/*public void setName(String name) {
this.name = name;
}*/
public int getAge() {
return age;
}
/*public void setAge(int age) {
this.age = age;
}*/
@Override
public String toString() {
// TODO Auto-generated method stub
return id+" "+name+" "+age;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Employee1> li=new ArrayList<Employee1>();
Employee1 e=new Employee1(9,"chaitu",26);
Employee1 e1=new Employee1(2,"mahesh",22);
Employee1 e2=new Employee1(8,"vinay",28);
Employee1 e3=new Employee1(6,"ravi",16);
li.add(e);
li.add(e1);
li.add(e2);
li.add(e3);
Collections.sort(li, new MyComparator1());
System.out.println(li);
}
}
Then write the MyComparator1 Class as shown below
import java.util.Comparator;
public class MyComparator1 implements Comparator<Employee1> {
@Override
public int compare(Employee1 o1, Employee1 o2) {
// TODO Auto-generated method stub
if(o1.getAge()>o2.getAge())
return -1;
else if(o1.getAge()<o2.getAge())
return 1;
else
return 0;
/*if(o1.getId()>o2.getId())
return 1;
else if(o1.getId()<o2.getId())
return -1;
else
return 0;*/
}
}
Now see this results your requirement.
Here it return results based on age in ascending order.
Here we are comparing added objects to list using Comparator Interface.For this First declare the Employee class as shown below:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Employee1 {
private int id;
private String name;
private int age;
public Employee1(int id,String name,int age) {
//super();
this.age = age;
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
/*public void setId(int id) {
this.id = id;
}*/
public String getName() {
return name;
}
/*public void setName(String name) {
this.name = name;
}*/
public int getAge() {
return age;
}
/*public void setAge(int age) {
this.age = age;
}*/
@Override
public String toString() {
// TODO Auto-generated method stub
return id+" "+name+" "+age;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Employee1> li=new ArrayList<Employee1>();
Employee1 e=new Employee1(9,"chaitu",26);
Employee1 e1=new Employee1(2,"mahesh",22);
Employee1 e2=new Employee1(8,"vinay",28);
Employee1 e3=new Employee1(6,"ravi",16);
li.add(e);
li.add(e1);
li.add(e2);
li.add(e3);
Collections.sort(li, new MyComparator1());
System.out.println(li);
}
}
Then write the MyComparator1 Class as shown below
import java.util.Comparator;
public class MyComparator1 implements Comparator<Employee1> {
@Override
public int compare(Employee1 o1, Employee1 o2) {
// TODO Auto-generated method stub
if(o1.getAge()>o2.getAge())
return -1;
else if(o1.getAge()<o2.getAge())
return 1;
else
return 0;
/*if(o1.getId()>o2.getId())
return 1;
else if(o1.getId()<o2.getId())
return -1;
else
return 0;*/
}
}
Now see this results your requirement.
Here it return results based on age in ascending order.
No comments:
Post a Comment