`

Collections 排序

阅读更多
1.Collections排序
import java.util.*;
public class ArrayListTest {
 
 public static void printElements(Collection c){
	  Iterator it=c.iterator();
	  while(it.hasNext()){
	    System.out.println(it.next());
      }
 }

 public static void main(String[] args){
	  ArrayList a1=new ArrayList();
	  Student s1=new Student(4,"zhangsan");
	  Student s2=new Student(2,"lisi");
	  Student s3=new Student(3,"wangwu");
	  Student s4=new Student(4,"mybole");
	  
	  a1.add(s1);
	  a1.add(s2);
	  a1.add(s3);
	  a1.add(s4);
	  Collections.sort(a1);
	//  Collections.sort(a1,new Student.StudentComparator());
	  printElements(a1);
	  System.out.println(Collections.max(a1));
     }
}

class Point{
	 int x, y;
	 Point(int x,int y){
	  this.x=x;
	  this.y=y;
	 }
	 public String toString(){
	  return ("x="+x+","+"y="+y);
	 }
}

class Student implements Comparable{
	 int num;
	 String name;
	 Student(int num,String name){
	  this.num=num;
	  this.name=name;
 }
 
 static class StudentComparator implements Comparator{
  public int compare(Object o1,Object o2){
	   Student s1=(Student) o1;
	   Student s2=(Student) o2;
	   int result=s1.num>s2.num?1:(s1.num==s2.num?0:-1);
	   if (result==0){
	    result=s1.name.compareTo(s2.name);
	   }
	   return result;
   }
 }
 
 public int compareTo(Object arg0) {
	  Student s=(Student) arg0;
	  return num>s.num?1:(num==s.num?0:-1);
 }
 
 
 public String toString(){
	 return "num:"+num+","+"name:"+name;
 }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics