改进的LIst接口和ListIlterator接口
ArrayList sort()
sort()方法根据指定的顺序对动态数组中的元素进行排序。
sort()的语法是
arraylist.sort(Comparator c)
public class ArrayListText {
public static void main(String[] args) {
ArrayList <String> books=new ArrayList<>();
books.add("西游记");
books.add("水浒传");
books.add("三国演艺");
books.add("红楼梦");
System.out.println("排序前"+books);
// books.sort(Comparator.reverseOrder());//升序
// books.sort(Comparator.naturalOrder());//降序
books.sort((Comparator.comparingInt(o -> ((String) o).length())));//升序
System.out.println("排序后"+books);
}
}
ArrayList的sort可以使用lambda表达式,其中sort
就是lambda表达式Comparator.comparingInt(o -> ((String) o).length())
。
ListIterator的用法
ListIterator相比于Iterator增加了向前迭代的功能
public static void main(String[] args) {
String[]books={"红楼梦","西游记","三国演义"};
var bookList = new ArrayList<>(List.of(books));
var lit=bookList.listIterator();
while(lit.hasNext())
{
System.out.println(lit.next());
lit.add("-------------");
}
System.out.println("下面开始反向迭代");
while (lit.hasPrevious())
{
System.out.println(lit.previous());
}
}