1.方法介绍
【方法签名】
Stream<T> sorted();
Stream<T> sorted(Comparator<? super T> comparator);
【方法属性】非终结方法
【方法参数】1.无参;2.自定义排序规则,重写Comparator接口的compara()方法
【方法作用】
1.对stream中的元素进行自然排序(无参的时候);
2.对stream中的元素按自定义排序规则进行排序(重写compare方法的时候)。
【方法返回值】包含排序之后元素的新的stream流
2.案例代码
2.1 代码
package com.northcastle.I_stream;
import java.util.ArrayList;
import java.util.stream.Stream;
public class StreamTest08Sorted {
public static void main(String[] args) {
//1.准备一个List集合
ArrayList<String> list = new ArrayList<>();
list.add("200");
list.add("1");
list.add("300");
list.add("256");
//2.获取Stream对象
Stream<String> streamList01 = list.stream();
Stream<String> streamList02 = list.stream();
//3.将元素 按照数字大小 升序排列
streamList01
.map(Integer::parseInt) // 先把字符串转成数字
.sorted() // 默认升序的方式
.forEach(System.out::println);
System.out.println("===================");
//3.将元素 按照数字大小 自定义顺序排列 : 降序
streamList02
.map(Integer::parseInt) // 先把字符串转成数字
.sorted((o1,o2) -> o2-o1) // 重写 Comparator 接口的compare方法,自定义比较的顺序 : 降序排列
.forEach(System.out::println);
}
}
2.2 执行结果
3.完成
Congratulations!
You are one step closer to success!