For arrays only, JDK 12 provides the Class<?> componentType() method. This method returns the component type of the array, as shown in the following two examples:
Pair[] pairs = new Pair[10];
String[] strings = new String[] {"1", "2", "3"};
// class modern.challenge.Pair
System.out.println("Component type of Pair[]: "
+ pairs.getClass().componentType());
// class java.lang.String
System.out.println("Component type of String[]: "
+ strings.getClass().componentType());