How to sort a vector elements that contains the user define
class object? (Note: If Suppose consider, A Student class
contain two data members. They are String studentName and
int rollNo. I am creating Four objects for this class, each
object contains students details like name and roll no. Now
i am storing that objects in vector and if i retiving the
elements from the vector means then it should be display in
sorting order)

Answers were Sorted based on User's Feedback



How to sort a vector elements that contains the user define class object? (Note: If Suppose consid..

Answer / kalyan g

other way to achieve this is implementing comparator
interface and implement compare(object) method.

Is This Answer Correct ?    7 Yes 1 No

How to sort a vector elements that contains the user define class object? (Note: If Suppose consid..

Answer / naren reddy

For sorting Any user defined class,We need to implement the
userdefined class with comparable or comparator
interfcae.Then only your collections.sort(ArrayList al)
will work,Otherwise it won't work.


Ex: class Employee implements Comparable{

private int age;

public void setAge(int age){
this.age=age;
}

public int getAge(){
return this.age;
}public int compareTo(Object otherEmployee){

/*
If passed object is of type other than Employee,
throw ClassCastException.
*/

if(!(otherEmployee instanceof Employee)){
throw new ClassCastException("Invalid object");
}

int age = ((Employee) otherEmployee).getAge();

if(this.getAge() > age)
return 1;
else if ( this.getAge() < age )
return -1;
else
return 0;

}

}

Is This Answer Correct ?    2 Yes 0 No

How to sort a vector elements that contains the user define class object? (Note: If Suppose consid..

Answer / vignesh_27

Hai The solution for this problem is.

import java.util.Collections;
import java.util.Vector;

class PointCoordinates {
private String x;
private int y;
public PointCoordinates(String x, int y) {
this.x = x;
this.y = y;
}
public String getX() {
return x;
}
public int getY() {
return y;
}
// Custom toString() Method.
public String toString() {
return x + " " + y;
}
}
public class ToStringFunction {
public static void main(String args[]) {
Vector v = new Vector();

PointCoordinates point1 = new
PointCoordinates("Rajan", 10);
PointCoordinates point2 = new
PointCoordinates("Vikky", 30);
PointCoordinates point3 = new
PointCoordinates("Zari",20);
PointCoordinates point4 = new
PointCoordinates("Ajai",80);
PointCoordinates point5 = new
PointCoordinates("Kennedi", 90);
v.addElement(point1.toString());
v.addElement(point2.toString());
v.addElement(point3.toString());
v.addElement(point4.toString());
v.addElement(point5.toString());
Collections.sort(v);
for(int i=0;i<v.size();i++)
System.out.println(v.get(i));


}
}

Is This Answer Correct ?    10 Yes 9 No

Post New Answer

More Core Java Interview Questions

What is difference overloading and overriding?

0 Answers   Cyient,


Features of Java?

4 Answers  


what is the use of declaring constructor as private?

5 Answers   Cyient, IVY Technologies, Sai Softech, Virtusa,


What is a native method in java programming?

0 Answers  


What is the difference between sleep and wait in java?

0 Answers  






What is multithreading and its advantages?

0 Answers  


What is string data type?

0 Answers  


Write a program based on Java script program.

0 Answers   Atos Origin,


give an example for encapsulation?

0 Answers   Aspire,


Can you instantiate the math class in Java?

0 Answers   IBS,


What are three ways in which a thread can enter the waiting state in java programming?

0 Answers  


Give us the name of the list layoutmanagers in java?

0 Answers  


Categories