当我从数组字段[]
中获得值时,一切正常
List<String> valuesToInsert = new ArrayList<>();
Field[] field = entity.getClass().getDeclaredFields();
for (Field field1 : field) {
field1.setAccessible(true);
try {
Object value = field1.get(entity);
valuesToInsert.add(value.toString());
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
valuesToInsert.remove(0);
System.out.println("Values to insert : " + valuesToInsert);
我总是按照传递的顺序得到值。
结果为常量:要插入的值:[1,Ivan,Petrov]
Method[] methods = entity.getClass().getDeclaredMethods();
List<String> returnTypes = new ArrayList<>();
for (Method method : methods) {
if (method.getName().startsWith(GET_PREFIX) || method.getName().startsWith(IS_PREFIX)) {
returnTypes.add(String.valueOf(method.getReturnType()));
}
}
returnTypes.remove(0);
System.out.println("RETURN TYPES : " + returnTypes);
但是我总是按照不同的顺序来做,我怎么能按照我想要的顺序来做呢?
根据文档,getfields()
和getmethods()
都提到以下内容:
返回的数组中的元素没有排序,也没有任何特定的顺序。
因此,您无法保证返回数组中字段
或方法
的顺序。如果顺序对你很重要,或者你只是想要一个恒定的顺序,你就得自己排序。在您的示例中,使用列表
保存字段值和方法返回类型。一个解决方案是使用Treeset
,这样无论您获得的字段[]
或方法[]
数组的顺序如何,集合的顺序都始终相同。
问题内容: 谁能帮助我在JAVA中找到方法的返回类型。我试过了 但不幸的是,它不起作用。请指导我。 输出: 不是int :: int 问题答案: 方法返回 你可以试试:
我创建了一个父类Repo,它具有用于在列表中插入、删除、显示和删除对象的方法。回购是一个泛型类。我为Repo创建了一个子类(如DepartmentRepo类)和pass Department、Employee等。上课。我想对传递到Repo类的任何类对象执行插入、删除、显示和删除操作。我需要获得方法“get”的返回值,它来自Java中的泛型类。我只能从泛型中获得方法名这里我提到了代码文件
问题内容: 背景 我曾经写过这种方法: 应该这样称呼它: 这很好用(尽管我在研究当前容易出错的问题时在这里的答案中已经看到)。 目前的情况 无论如何,现在我正在编写以下代码(在扩展javax.servlet.jsp.tagext.TagSupport的类中): 目的是可以这样称呼: 我的评估方法中的代码显然不起作用。的第二个参数应该是Class对象。这导致我: 我的问题 如何获得通用(返回)类型的
现在我希望以泛型的方式使用这些类。 如何从方法“method1”和“method2”返回泛型类型(可以是猫或狗)。我有几个返回“T extends Animal”的方法,所以最好在方法级别或类级别中声明泛型类型。
问题内容: 我使用反射将包中的每个方法都获取了,然后根据每个方法的返回类型,我想执行一些操作。但不幸的是,我在收藏方面遇到了问题。当我找到一种方法来返回诸如List之类的集合时,我找不到找到有关List元素类型的方法。我使用下面的代码来获取方法的返回类型。 上面的代码运行良好,并获得了所有返回List的方法,但它只是将java.util.List作为返回类型返回,而我找不到找到了解该List中元素
本文向大家介绍android getActivity.findViewById获取ListView 返回NULL的方法,包括了android getActivity.findViewById获取ListView 返回NULL的方法的使用技巧和注意事项,需要的朋友参考一下 在控件ID正确的情况下,检查是否在实例化布局文件之后,获取LISTVIEW, 先inflate找layout下布局文件,并实例化