(对ArrayList排序)编写以下方法,对一个数值的ArrayList进行排序
前情提要
编写方法:
public static void sort(ArrayList<Integer> list){}
编写测试程序,提示用户输入5个数字,将其存储在一个数组列表中,并且以升序进行显示。
代码实现
import java.util.ArrayList;
import java.util.*;
public class java11_11 {
public static void main(String[] args){
Scanner reader=new Scanner(System.in);
ArrayList<Integer> list=new ArrayList<>();
System.out.print("输入5个数字:");
for(int i=0;i<5;i++)
{
list.add(reader.nextInt());
}
for(Integer temp:list)
{
System.out.print(temp+" ");
}
System.out.println();
A.sort(list);
for(Integer temp:list)
{
System.out.print(temp+" ");
}
}
}
class A{
public static void sort(ArrayList<Integer> list){
list.sort(Comparator.naturalOrder());
}
}
输入
25 65 12 0 69
输出
题目来源
Java语言程序设计与数据结构(基础篇),也就是Java的黑皮书。
解析
ArrayList初始化
注意从JDK7开始,语句:
ArrayList<AConcreteType> list=new ArrayList<AConcreteType>();
可以简化为:
ArrayList<AConcreteType> list=new ArrayList<>();
sort
sort() 方法根据指定的顺序对动态数组中的元素进行排序。
list.sort(Comparator.naturalOrder());
Java Comparator 接口的 naturalOrder() 方法指定元素以自然顺序(升序)排序。
list.sort(Comparator.reverseOrder());
对元素进行降序排列。