How do I get the component type of array?
The Class.getComponentType() method call returns the Class representing the component type of array. If this class does not represent an array class this method returns null reference instead. package org.kodejava.lang.reflect; public class ComponentTypeDemo { public static void main(String[] args) { String[] words = {"and", "the"}; int[][] matrix = {{1, 1}, {2, 1}}; Double number = […]
Article by Wayan · Source: Kode Java ↗
The Class.getComponentType() method call returns the Class representing the component type of array. If this class does not represent an array class this method returns null reference instead.
package org.kodejava.lang.reflect;
public class ComponentTypeDemo {
public static void main(String[] args) {
String[] words = {"and", "the"};
int[][] matrix = {{1, 1}, {2, 1}};
Double number = 10.0;
Class<?> clazz = words.getClass();
Class<?> cls = matrix.getClass();
Class<?> clz = number.getClass();
// Gets the type of array component.
Class<?> type = clazz.getComponentType();
System.out.println("Words type: " +
type.getCanonicalName());
// Gets the type of array component.
Class<?> matrixType = cls.getComponentType();
System.out.println("Matrix type: " +
matrixType.getCanonicalName());
// It will return null if the class doesn't represent
// an array.
Class<?> numberType = clz.getComponentType();
if (numberType != null) {
System.out.println("Number type: " +
numberType.getCanonicalName());
} else {
System.out.println(number.getClass().getName() +
" class is not an array");
}
}
}
This program print the following output:
Words type: java.lang.String
Matrix type: int[]
java.lang.Double class is not an array
Comments 0
Share your questions, experiences, or feedback about this article.
Sign in with Google to leave a comment.
Sign in with Google
No comments yet. Be the first to share your feedback.