<pre>import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
/**
* java program to find the largest,2nd largest,smallest and
* 2nd smallest numbers in a given array
* Created by Sani Kamal on 05-May-17.
*/
public class FindLargest {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("Enter size of array:");
int num = Integer.parseInt(br.readLine());
int[] numbers = new int[num];
for (int i = 0; i < num; i++) {
numbers[i] = (int) (Math.random() * 125);
}
//print all the numbers in array
System.out.println("Array Elements:");
for (int i = 0; i < num; i++) {
System.out.print(numbers[i] + " ");
}
System.out.println();
//sort array
Arrays.sort(numbers);
System.out.println("Sorted array:");
for (int number : numbers) {
System.out.print(number + " ");
}
System.out.println();
System.out.println("Largest element in array:" + numbers[num- 1]);
System.out.println("2nd largest element in array:" + numbers[num - 2]);
System.out.println("smallest element in array:" + numbers[0]);
System.out.println("2nd smallest element in array:" + numbers[1]);
} catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace();
}
}
}</pre>