使用 lambda 表达式对 LinkedList 进行排序

Sorting a LinkedList with a lambda expression

你好。我想对新创建的 LinkedList 进行升序排序,列表的所有元素都是随机创建的。我的任务是用 Comparator 对它们进行排序,但我不允许编写实现 Comparator 的 class,而我应该通过 lambda 表达式对其进行排序。到目前为止,这是我的代码:

public List<Integer> methodName(int length, int min, int max){
        LinkedList<Integer> intll = new LinkedList<>();
        for (int i =0; i<length;i++){
            intll.add(ThreadLocalRandom.current().nextInt(min,max+1));
        //Sorting part 

到目前为止,我尝试使用 Collections 和 List 中的排序方法,但无法进一步帮助我。 非常感谢您提前帮助我。

import java.util.stream.Collectors;

public List<Integer> methodName(int length, int min, int max) {
        LinkedList<Integer> intll = new LinkedList<>();
        for (int i =0; i<length;i++)
            intll.add(ThreadLocalRandom.current().nextInt(min,max+1));

        return intll.stream().sorted((a, b) -> a - b).collect(Collectors.toList());
}

如果要更改排序顺序,请使用 b - a 而不是 a - b

LinkedList<Integer> sortedIntll = intll.stream().sorted(Comparator.comparingInt(Integer::valueOf)).collect(Collectors.toCollection(LinkedList::new));