gpt4 book ai didi

java - clazz.getDeclaredFields() 返回 Set 而不是 Set 中的 Class

转载 作者:行者123 更新时间:2023-12-01 23:29:47 24 4
gpt4 key购买 nike

这看起来很简单,但我很难找到答案。我在一个类上使用 getDeclaredFields() ,对于某些字段,它返回 Set 而不是集合中的 Class。

    for(Field f: clazz.getDeclaredFields()) {
//f is Set<Object> but f.getType() returns java.util.Set, not Object, how do I access the //Object? }

最佳答案

如果我理解正确,您需要该字段的通用类型。

for(Field f: clazz.getDeclaredFields()) {
Type type = f.getGenericType();
ParameterizedType impl = (ParameterizedType) type;
Class genericArgument = (Class) impl.getActualTypeArguments()[0];
System.out.println(genericArgument);
}

打印内容

class java.lang.String

关于java - clazz.getDeclaredFields() 返回 Set 而不是 Set 中的 Class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19504769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com