Register Now

Forget Password

Login

Lost Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Login

Register Now

Find the second highest element from a list of intergers using stream


 
Suppose we have an array of integers
int[] numbers = {5, 9, 11, 2, 8, 21, 1};
	
// sort in descending-order and get 2nd largest element
int secondLargestNumber = Arrays
	.stream(numbers)
	.boxed()
	.sorted(Comparator.reverseOrder())
	.skip(1)
	.findFirst()
	.get();
Here boxed() will convert array values to Integer objects and sorted() will sort it in descending order after sorting it in descending order we will skip the first one which is the largest element in aray and will get the second one .
Like this we can get the desired result