我也是初学者,分享一下我的理解:ArrayList:底层的数据结构使用的数组结构
既然这样我们还是可以使用数组排序的思想 来排序ArrayList集合
我用自定义的选择排序方法 测试了一下 ok的
不知道符不符合要求:)
- import java.util.*;
- public class Test5 {
- /**
- * 编写程序,生成5个1至10之间的随机整数,存入一个List集合,编写方法对List集合进行排序
- * (自定义排序算法,禁用Collections.sort方法和TreeSet),然后遍历集合输出。
- * @author Administrator
- */
- public static void main(String[] args) {
- ArrayList<Integer> list = new ArrayList<Integer>();
- Random rd = new Random();
-
-
- for(int i = 0;i<5;i++) {
- list.add(rd.nextInt(9)+1);
- }
- System.out.println("++++++++排序前+++++++++++");
- for(ListIterator<Integer> li = list.listIterator();li.hasNext(); )
- {
- System.out.println(li.next());
- }
- for (int x = 0;x<list.size()-1 ;x++ )
- {
- for (int y =x+1 ;y<list.size() ;y++ )
- {
- if(list.get(x)>list.get(y))
- {
- Integer temp;
- temp = list.get(x);
- list.set(x,list.get(y));
- list.set(y,temp);
- }
- }
- }
- System.out.println("++++++++排序后+++++++++++");
- for(ListIterator<Integer> li = list.listIterator();li.hasNext(); )
- {
- System.out.println(li.next());
- }
-
- }
- }
复制代码 |