黑马程序员技术交流社区

标题: 关于集合排序问题 [打印本页]

作者: 潘天功    时间: 2012-12-13 00:04
标题: 关于集合排序问题
本帖最后由 潘天功 于 2012-12-13 21:37 编辑

写一个集合,集合存放的是整形的数据。然后写一个帮助类,帮组类中有两个static方法,一个方法为从大到小的顺序排序,一个方法为从小到大的顺序排序。实现上述的代码。
作者: V_master    时间: 2012-12-13 02:08
本帖最后由 V_master 于 2012-12-13 02:09 编辑


{:soso_e117:}
作者: 潘天功    时间: 2012-12-13 13:53
求高手给解决啊!很急的、面试题啊!
作者: 奋斗的青春    时间: 2012-12-13 14:59
定义的Helper类:
  1. package collectionsSort;

  2. import java.util.Collections;
  3. import java.util.List;

  4. public class Helper {
  5. /**
  6. * 从小到大排序
  7. * @param list
  8. */
  9. public static void small2Big(List<Integer> list) {
  10. Collections.sort(list);
  11. }
  12. /**
  13. * 从小到大排序
  14. * @param list
  15. */
  16. public static void big2Small(List<Integer> list) {
  17. IntComparator ic = new IntComparator();
  18. Collections.sort(list,ic);
  19. }
  20. }
复制代码
所要使用的比较器:
  1. package collectionsSort;

  2. import java.util.Comparator;

  3. public class IntComparator implements Comparator<Integer> {

  4. @Override
  5. public int compare(Integer i1,Integer i2) {
  6. if(i1>i2)
  7. return -1;
  8. else if(i1==i2)
  9. return 0;
  10. return 1;
  11. }

  12. }
复制代码
集合排序测试类:
  1. package collectionsSort;

  2. import java.util.ArrayList;
  3. import java.util.List;


  4. public class CollectionSort {
  5. public static void main(String[] args) {
  6. List<Integer> list = new ArrayList<Integer>();
  7. list.add(5);
  8. list.add(1);
  9. list.add(4);
  10. list.add(2);
  11. list.add(3);
  12. Helper.small2Big(list);
  13. System.out.println(list);
  14. System.out.println("--------------------淫荡的分割线-------------------------");
  15. Helper.big2Small(list);
  16. System.out.println(list);


  17. }

  18. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2