从java.util.List<SomeType>获取类的名称,可以使用以下代码:
List<SomeType> list = new ArrayList<SomeType>();
Type type = list.getClass().getGenericSuperclass();
if (type instanceof ParameterizedType) {
ParameterizedType parameterizedType = (ParameterizedType) type;
Type[] actualTypeArguments = parameterizedType.getActualTypeArguments();
if (actualTypeArguments != null && actualTypeArguments.length > 0) {
String className = actualTypeArguments[0].getTypeName();
System.out.println("类名: " + className);
}
}
这段代码首先创建了一个List<SomeType>对象,然后通过getClass()方法获取其类类型,并使用getGenericSuperclass()方法获取其泛型类型。如果类型是ParameterizedType,则可以通过getActualTypeArguments()方法获取实际类型参数,并使用getTypeName()方法获取类名。最后,将类名打印到控制台。
领取专属 10元无门槛券
手把手带您无忧上云