1.先将数字添加到数组中,通过排序,再装入到list中去。
代码:
@Test public void RandomSort1(){ int [] a = new int[10]; for (int i = 0; i <10 ; i++) { int temp = (int) (Math.random()*100); a[i] =temp; } for (int i = 0; i <a.length-1 ; i++) { for (int j = 0; j <a.length-1-i ; j++) { if (a[j]<= a[j+1]){ int temp = a [j]; a[j] = a[j+1]; a[j+1] = temp; } } } List list1 = new ArrayList(); for (int i = 0; i <a.length ; i++) { list1.add(a[i]); } Iterator iterator = list1.iterator(); while(iterator.hasNext()){ System.out.print( " "+iterator.next() ); } }
2.直接将数字装入到list中去,在遍历添加到数组,排序后,最后在放到list中去。
代码:
@Test public void RandomSort2(){ List<Integer> list1 = new ArrayList<Integer>(); for (int i = 0; i <10 ; i++) { int temp = (int)(Math.random()*100); list1.add(temp); } System.out.println(list1);
Integer a [] = list1.toArray(new Integer[list1.size()]); //转化成数组 // String a [] =list.toArray(new String[list.size()]); //String类型 for (int i = 0; i <a.length-1 ; i++) { for (int j = 0; j <a.length-1-i ; j++) { if (a[j]<a[j+1]){ int temp = a[j]; a[j] = a[j+1]; a[j+1]=temp; } } } List<Integer> list =Arrays.asList(a); //使用Arrays 将数组其转换成list类型 Iterator iterator = list.iterator(); while (iterator.hasNext()){ System.out.print(" "+iterator.next()); } }
3直接使用list进行排序
代码:
@Test
public void RandomSort2(){
List<Integer> list1 = new ArrayList<Integer>();
for (int i = 0; i <10 ; i++) {
int temp = (int)(Math.random()*100);
list1.add(temp);
}
System.out.println(list1);
for (int i = 0; i <list1.size()-1 ; i++) {
for (int j = 0; j <list1.size()-1-i ; j++) {
if ((int)list1.get(j)<(int)list1.get(j+1)){ //对象是object类型,必须进行转型
int temp = (int)list1.get(j);
list1.set(j,list1.get(j+1));
list1.set(j+1,temp);
}
}
}
System.out.println(list1);
}