Link to home
Start Free TrialLog in
Avatar of trublaha
trublaha

asked on

Sorting an ArrayList of Objects??

I tried to make a program to sort an ArrayList of objects, but can’t get it to work. What am I doing wrong?

   import java.util.*;
    class test
   {
       public static void main (String [] args)
      {
         List list = new ArrayList();
         trivialObject testa = new trivialObject ("ABCD", "EFGH");
         trivialObject testb = new trivialObject ("AAAA", "BCDA");
         list.add (testa);
         list.add (testb);
         Collections.sort(list);
      }
   }

    class trivialObject
   {
      String valuea, valueb;
       trivialObject(String valuea, String valueb)
      {
         this.valuea = valuea; this.valueb = valueb;
      }
   
       public String toString ()
      {
         String result = (valuea + ", " + valueb);
         return result;
      }
   }
ASKER CERTIFIED SOLUTION
Avatar of cavey79
cavey79

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of cavey79
cavey79

or to implement a comparator

Comparator c=new Comparator(){
  public int compare(Object o1,Object o2){
     trivialObject t1=(trivialObject)o1;
     trivialObject t2=(trivialObject)o2;
//perform the comparison here
     return t1.valuea.compareTo(t2.valuea);
//a silly example again.

  }
}
Sorry, I was incomplete with the comparator. In the second case, you would have to call another method for sorting:
Collections.sort(List list, Comparator c)