public static void main(String[] args)
{
//定义一个整型数组对象
Integer[] arr = { 3, 4, 8, 1, 6, 2, 5, 45, 12, 33 };
List<Integer> list = Arrays.asList(arr);//将数组对象转换为List集合
System.out.println("排序之前:");
for(Iterator<Integer> it=list.iterator();it.hasNext();)//排序前打印List集合
{
System.out.print(it.next()+" ");
}
//从大到小排序
list = Test9_Help.bigToSmall(list);
System.out.println();//换行
System.out.println("从大到小排序之后:");
for(Iterator<Integer> it=list.iterator();it.hasNext();)//排好序后打印List集合
{
System.out.print(it.next()+" ");
}
//从小到大排序
list = Test9_Help.smallToBig(list);
System.out.println();//换行
System.out.println("从小到大排序之后:");
for(Iterator<Integer> it=list.iterator();it.hasNext();)//排好序后打印List集合
{
System.out.print(it.next()+" ");
}
}
}
class Test9_Help
{
/**
* 从小到大排序
* @param list 原始的集合
* @return 排好序的集合
*/
public static List<Integer> smallToBig(List<Integer> list)
{
Integer[] arr = (Integer[]) list.toArray();
int k;
for (int i = 0; i < arr.length - 1; i++)
{
int temp = i;
for (int j = i + 1; j < arr.length; j++)
{
if (arr[temp] > arr[j])
{
temp = j;
}
}
if(temp!=i)
{
k=arr[temp];
arr[temp]=arr[i];
arr[i]=k;
}
}
return Arrays.asList(arr);
}
/**
* 从大到小排序
* @param list 原始的集合
* @return 排序后的集合
*/
public static List<Integer> bigToSmall(List<Integer> list)
{
Integer[] arr = (Integer[]) list.toArray();
int k;
for (int i = 0; i < arr.length - 1; i++)
{
int temp = i;
for (int j = i + 1; j < arr.length; j++)
{
if (arr[temp] < arr[j])
{
temp = j;
}
}
if(temp!=i)
{
k=arr[temp];
arr[temp]=arr[i];
arr[i]=k;
}
}
return Arrays.asList(arr);
} |