Wednesday, April 9, 2025

Sort Int Array In Descending Order Using Java 8

 Sort Int Array In Descending Order Using Java 8

package com.demo.example;

import java.util.Arrays;
import java.util.Comparator;

public class SortReverseOrder {

	public static void main(String[] args) {

		/* Sort int array in descending/reverse order using java 8"
		 * 
		 */
		int[] intArray = { 1, 2, 3, 7, 9, 10, 12, 18 };
		System.out.println("####### Given Array : " + Arrays.toString(intArray));
		int[] reverseOrderArr = Arrays.stream(intArray).boxed().sorted(Comparator.reverseOrder()).mapToInt(i -> i)
				.toArray();
		System.out.println("####### ReverseOrder Array : " + Arrays.toString(reverseOrderArr));

		
		/* nth highest element in array using java 8
		 * 
		 */
		System.out.println("####### nth highest element in array #######");
		int n = 3; // Find the 3rd highest element
		int nthHighestElement = Arrays.stream(intArray).boxed().sorted(Comparator.reverseOrder()).skip(n - 1)
				.findFirst().orElse(-1);
		System.out.println("nth highest element is : " + nthHighestElement);

		
		/* Sort int array in Ascending order using java 8
		 * 
		 */
		int[] sortedOrderArr = Arrays.stream(intArray).boxed().sorted().mapToInt(i -> i).toArray();
		System.out.println("####### sortedOrder Array : " + Arrays.toString(sortedOrderArr));
		
		/* nth smallest element in array using java 8
		 * 
		 */
		System.out.println("####### nth smallest element in array #######");
		int ns = 3; // Find the 3rd smallest element
		int nthHighestSmallest = Arrays.stream(intArray).boxed().sorted().skip(ns - 1).findFirst().orElse(-1);
		System.out.println("nth smallest element is : " + nthHighestSmallest);
	}
}
####### Given Array : [1, 2, 3, 7, 9, 10, 12, 18]
####### ReverseOrder Array : [18, 12, 10, 9, 7, 3, 2, 1]

####### nth highest element in array #######
nth highest element is : 10

####### sortedOrder Array : [1, 2, 3, 7, 9, 10, 12, 18]
####### nth smallest element in array #######
nth smallest element is : 3