面试题,不会做啊,求大神指点

解决方案 »

  1.   


    Collections.sort(list, new  Comparator<T>() { @Override
    public int compare(T o1, T o2) {
    // TODO Auto-generated method stub
    return 0;
    }
    });
      

  2.   


    Collections.sort(list, new  Comparator<T>() { @Override
    public int compare(T o1, T o2) {
    // TODO Auto-generated method stub
    return 0;
    }
    });
    还是不懂啊 ,大哥写个注释吧
      

  3.   


    Collections.sort(list, new  Comparator<T>() { @Override
    public int compare(T o1, T o2) {
    // TODO Auto-generated method stub
    return 0;
    }
    });
    还是不懂啊 ,大哥写个注释吧list 是你要排序的。
    Collections 是集合的公共类,提供各种工具,其中提供了排序方法。
    Collections.sort(),方法两个参数,1,要排序的集合,2.排序方式
    下面是匿名内部类,实现了排序借口,你也可以写外面。
    Comparator c=new  Comparator<T>() { @Override
    public int compare(T o1, T o2) {
    // TODO Auto-generated method stub
    return 0;
    }
    }
      

  4.   

    对象没贴出来
    public void sortTest1(){
    List<SortBean> list = new ArrayList<SortBean>();
    SortBean bean = null;
    Random r = new Random();
    for(int i=0;i<6;i++){
    bean = new SortBean();
    bean.setId(i);
    bean.setName("测试"+i);
    bean.setAge(r.nextInt(100));
    list.add(bean);
    }
    // System.out.println(JSONArray.fromObject(list));
    ComparatorChain chain = new ComparatorChain();
    chain.addComparator(new BeanComparator("age"),true);//true,fase正序反序
    // chain.addComparator(new BeanComparator("name"));
    // chain.addComparator(new BeanComparator("age"));
    Collections.sort(list,chain);
    System.out.println(JSONArray.fromObject(list));
    }
      

  5.   

    import java.util.Set ;
    import java.util.TreeSet ;
    class Person implements Comparable<Person>{
    private String name ;
    private int age ;
    public Person(String name,int age){
    this.name = name ;
    this.age = age ;
    }
    public String toString(){
    return "姓名:" + this.name + ";年龄:" + this.age ;
    }
    public int compareTo(Person per){
    if(this.age>per.age){
    return 1 ;
    }else if(this.age<per.age){
    return -1 ;
    }else{
    return this.name.compareTo(per.name) ; // 调用String中的compareTo()方法
    }
    }
    };
    public class TreeSetDemo04{
    public static void main(String args[]){
    Set<Person> allSet = new TreeSet<Person>() ;
    allSet.add(new Person("张三",30)) ;
    allSet.add(new Person("李四",31)) ;
    allSet.add(new Person("王五",32)) ;
    allSet.add(new Person("王五",32)) ;//重复元素,不能加入
    allSet.add(new Person("王五",32)) ;//重复元素,不能加入
    allSet.add(new Person("赵六",33)) ;
    allSet.add(new Person("孙七",33)) ;
    System.out.println(allSet) ;
    }
    };