A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 潘天功 中级黑马   /  2012-12-13 00:04  /  1296 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 潘天功 于 2012-12-13 21:37 编辑

写一个集合,集合存放的是整形的数据。然后写一个帮助类,帮组类中有两个static方法,一个方法为从大到小的顺序排序,一个方法为从小到大的顺序排序。实现上述的代码。

点评

定义一个比较器,使用Collections中的sort()方法就可以了。  发表于 2012-12-13 15:13

评分

参与人数 1黑马币 +1 收起 理由
yingying + 1 神马都是浮云

查看全部评分

3 个回复

倒序浏览
本帖最后由 V_master 于 2012-12-13 02:09 编辑


{:soso_e117:}
回复 使用道具 举报
求高手给解决啊!很急的、面试题啊!
回复 使用道具 举报
定义的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. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马