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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

编写程序,生成5个1至10之间的随机数,存入List集合,编写方法对集合进行排序自定义算法排序,禁用Collections和TreeSet
  1. public class Demo {
  2.         public static void main(String[] args) {
  3.                 List<Integer> list = new ArrayList<Integer>();
  4.                 for (int x = 1; x <= 5; x++) {
  5.                         Random r = new Random();
  6.                         int n = r.nextInt(10) + 1;
  7.                         list.add(n);
  8.                 }
  9.                 // Collections.sort(list);
  10.                 System.out.println(list);
  11.                 Integer[] arr = list.toArray(new Integer[list.size()]);
  12.                 Arrays.sort(arr);
  13.                
  14.         }

  15. }
复制代码

把集合中的元素转换成数组,用冒泡排序,但是集合中的元素还是没有变的。排序的只是数组,难度要重新添加到另外一个集合才行?那就不是原来的集合了。求大神解释下?

1 个回复

倒序浏览
  1. public class Demo {
  2.         public static void main(String[] args) {
  3.                 List<Integer> list = new ArrayList<Integer>();
  4.                 for (int x = 1; x <= 5; x++) {
  5.                         Random r = new Random();
  6.                         int n = r.nextInt(10) + 1;
  7.                         list.add(n);
  8.                 }
  9.                 // Collections.sort(list);
  10.                 System.out.println(list);
  11.                 Integer[] arr = list.toArray(new Integer[list.size()]);
  12.                 Arrays.sort(arr);
  13.                 list.clear();
  14.                 for(Integer i:arr){
  15.                         list.add(i);
  16.                 }
  17.                 System.out.println(list);
  18.                
  19.         }

  20. }
复制代码

这是我重新做的,把集合中的元素清除,重新添加,这样对吗?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马