// create a class for comparing name  that implements the comparator interface     
class BooknameComparator implements Comparator{  
    public int compare(Object o1,Object o2){  
    Student s1=(Student)o1;  
    Student s2=(Student)o2;  
    return s1.name.compareTo(s2.name);    
    }  
    } 
// create a class for comparing price 
class PriceComparator implements Comparator{  
    public int compare(Object o1,Object o2){  
    Student s1=(Student)o1;  
    Student s2=(Student)o2;  
    if(s1.price==s2.price)  
return 0;  
else if(s1.price>s2.price)  
return 1;  
else  
return -1;  
}     
    } 
In your main class ,call the sort method as follows :
 // for comparison using name
    Collections.sort(al,new BooknameComparator ());  
 // for comaprison using price
    Collections.sort(al,new PriceComparator ());  
You can customise your sorting based on your needs and these classes
solved Sorting an array with out the compareTo method [closed]