温馨提示×

Java sorted()函数在不同数据结构中的应用

小樊
83
2024-08-27 12:26:13
栏目: 编程语言

sorted() 函数是 Java 8 引入的一个方法,它可以用于对集合(Collection)或流(Stream)进行排序。这个方法返回一个新的、排序后的集合,原始集合保持不变。sorted() 方法可以在不同的数据结构中使用,例如列表(List)、集合(Set)和流(Stream)。

  1. 在 List 中使用 sorted()
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(5, 3, 1, 4, 2);

        List<Integer> sortedNumbers = numbers.stream()
                .sorted()
                .collect(Collectors.toList());

        System.out.println("Original list: " + numbers);
        System.out.println("Sorted list: " + sortedNumbers);
    }
}
  1. 在 Set 中使用 sorted()
import java.util.HashSet;
import java.util.Set;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        Set<Integer> numbers = new HashSet<>(Arrays.asList(5, 3, 1, 4, 2));

        List<Integer> sortedNumbers = numbers.stream()
                .sorted()
                .collect(Collectors.toList());

        System.out.println("Original set: " + numbers);
        System.out.println("Sorted list: " + sortedNumbers);
    }
}
  1. 在 Stream 中使用 sorted()
import java.util.stream.Stream;

public class Main {
    public static void main(String[] args) {
        Stream<Integer> numberStream = Stream.of(5, 3, 1, 4, 2);

        List<Integer> sortedNumbers = numberStream
                .sorted()
                .collect(Collectors.toList());

        System.out.println("Sorted list: " + sortedNumbers);
    }
}

注意:在使用 sorted() 方法时,需要确保元素实现了 Comparable 接口,以便进行比较。如果需要自定义排序规则,可以将一个 Comparator 作为参数传递给 sorted() 方法。

0