溫馨提示×

  • 首頁 > 
  • 問答 > 
  • 編程語言  > 
  • Java sorted()函數(shù)在不同數(shù)據(jù)結(jié)構(gòu)中的應(yīng)用

Java sorted()函數(shù)在不同數(shù)據(jù)結(jié)構(gòu)中的應(yīng)用

小樊
83
2024-08-27 12:26:13
欄目: 編程語言

sorted() 函數(shù)是 Java 8 引入的一個(gè)方法,它可以用于對集合(Collection)或流(Stream)進(jìn)行排序。這個(gè)方法返回一個(gè)新的、排序后的集合,原始集合保持不變。sorted() 方法可以在不同的數(shù)據(jù)結(jié)構(gòu)中使用,例如列表(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() 方法時(shí),需要確保元素實(shí)現(xiàn)了 Comparable 接口,以便進(jìn)行比較。如果需要自定義排序規(guī)則,可以將一個(gè) Comparator 作為參數(shù)傳遞給 sorted() 方法。

0