Learnitweb

Sort a List in Ascending Order

Approach 1: Using Stream.sorted()

List<Integer> nums = Arrays.asList(4,1,3,2);
List<Integer> sorted = nums.stream()
                           .sorted()
                           .collect(Collectors.toList());
System.out.println(sorted); // [1, 2, 3, 4]

Why it works:

  • sorted() uses natural ordering for elements.

Approach 2: Using Comparator.naturalOrder() (Alternative)

List<Integer> nums = Arrays.asList(4,1,3,2);
List<Integer> sorted = nums.stream()
                           .sorted(Comparator.naturalOrder())
                           .collect(Collectors.toList());
System.out.println(sorted); // [1, 2, 3, 4]

Why it works:

  • Explicitly provides a comparator for clarity.
  • Useful in generic code where type may not have natural ordering.