이글루스 | 로그인  



태그 : collections

object sort test

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;

public class WordList {

 public static void main(String[] args) {
  
  List list = new ArrayList();
  
  WordList word = new WordList();
  
  Emp e1 = word.new Emp("c",100);
  Emp e2 = word.new Emp("f",1);
  Emp e3 = word.new Emp("a",5);
  Emp e4 = word.new Emp("d",2);
  Emp e5 = word.new Emp("b",3);
  Emp e6 = word.new Emp("a",4);
  
  list.add(e1);
  list.add(e2);
  list.add(e3);
  list.add(e4);
  list.add(e5);
  list.add(e6);

  Collections.sort(list, new Comparator() {
   public int compare(Object o1, Object o2) {
   
    Emp emp1 = (Emp)o1;
    Emp emp2 = (Emp)o2;
    
    if(emp1.name.compareTo(emp2.name) > 0) return 1;
    else if(emp1.name.compareTo(emp2.name) == 0) {
     
     if(emp1.age > emp2.age) return 1;
     else if(emp1.age == emp2.age) return 0;
     else return -1;
    }
    else return -1;
    
   }
  });
  
  for(Iterator iter = list.iterator();iter.hasNext(); ) {
   Emp s = (Emp)iter.next();
   System.out.println(s.getName() + "," + s.getAge());
  }
 }
 
 
 class Emp {
  private String name;
  private int age;
  
  public Emp(String name, int age) {
   this.name = name;
   this.age = age;
  }

  public int getAge() {
   return age;
  }

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

  public String getName() {
   return name;
  }

  public void setName(String name) {
   this.name = name;
  }
  
  
 }
}

by 나림 | 2007/10/10 11:50 | java | 트랙백 | 덧글(0)

◀ 이전 페이지          다음 페이지 ▶