Java获取java.util.List的通用类型

Java获取java.util.List的通用类型,第1张

Java获取java.util.List的通用类型

如果这些实际上是某个类的字段,那么你可以在反射的帮助下获得它们:

package test;import java.lang.reflect.Field;import java.lang.reflect.ParameterizedType;import java.util.ArrayList;import java.util.List;public class Test {    List<String> stringList = new ArrayList<String>();    List<Integer> integerList = new ArrayList<Integer>();    public static void main(String... args) throws Exception {        Field stringListField = Test.class.getDeclaredField("stringList");        ParameterizedType stringListType = (ParameterizedType) stringListField.getGenericType();        Class<?> stringListClass = (Class<?>) stringListType.getActualTypeArguments()[0];        System.out.println(stringListClass); // class java.lang.String.        Field integerListField = Test.class.getDeclaredField("integerList");        ParameterizedType integerListType = (ParameterizedType) integerListField.getGenericType();        Class<?> integerListClass = (Class<?>) integerListType.getActualTypeArguments()[0];        System.out.println(integerListClass); // class java.lang.Integer.    }}

你还可以对参数类型和方法的返回类型执行此 *** 作。

但是,如果它们处于你需要了解它们的类/方法的同一范围之内,那么就没有必要了解它们,因为你已经自己声明了它们。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4936717.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-13
下一篇2022-11-13

发表评论

登录后才能评论

评论列表(0条)

    保存