在不知道类名的情况下创建函数

康纳特

这是我想做的事情:

我有这段代码:

    Object selectedCreditId = null;
    int i = 0;
    String selectedCreditName = leasing.getCredit().getDisplayName();
    Collection<DCredRating> selectCreditIds = creditData.getItemIds();
    for (DCredRating id: selectCreditIds) {
        String creditItem = id.getDisplayName();
        if (selectedCreditName.equals(creditItem)) {
            selectedCreditId = creditData.getIdByIndex(i);
        }
            i++;
    }

我想使用此代码创建函数。该函数将leasing类和creditDataBeanItemContainer作为参数并返回selectedCreditId对象。

换句话说,是这样的:

private Object getSelectedCreditId(LeasingResP param, BeanItemContainer<...> param2) {
    Object selectedCreditId = null;
    int i = 0;
    LeasingResP leasing = param;
    BeanItemContainer<...> creditData = param2;
    String selectedCreditName = leasing.getCredit().getDisplayName();
    Collection<...> selectCreditIds = creditData.getItemIds();
    for (... id: selectCreditIds) {
        String creditItem = id.getDisplayName();
        if (selectedCreditName.equals(creditItem)) {
            selectedCreditId = creditData.getIdByIndex(i);
        }
            i++;
    }
}

这里的问题是creditData容器可以属于不同的类。

有什么“漂亮”的方法可以做到这一点,还是我必须为不同的类编写一个if块?

灵魂大师

如果您真的对容器中收集的bean的类型不感兴趣,可以声明以下方法:

private Object getSelectedCreditId(LeasingResP param, BeanItemContainer<?> param2) {
    ...
}

“?” 表示未知类型的容器,因此您只知道它们是类型的bean Object

您还可以使该方法通用,以便它返回正确的类型:

private <T extends DCredRating> T getSelectedCreditId(LeasingResP param, BeanItemContainer<? extends T> param2) {
    ...
}

第二种用法的用法是(一个示例):

LeasingResP param = ...
BeanItemContainer<DCredRating> container = ...
DCredRating dcr = getSelectedCreditId(param, container);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在不知道类的情况下查询本体

来自分类Dev

在不知道类名的情况下获取静态属性的值

来自分类Dev

如何在不知道类名的情况下使用NDB查询

来自分类Dev

在不知道类名的情况下获取静态属性的值

来自分类Dev

在不知道函数参数的情况下使用lambda创建std :: function

来自分类Dev

如何在不知道类的情况下从另一个 dll 调用类的函数?

来自分类Dev

如何在不知道按钮 ID/类或表单 ID/类的情况下提交表单?

来自分类Dev

如何在不知道类型的情况下从泛型函数调用函数?

来自分类Dev

在不知道类型的情况下将对象转换为通用类

来自分类Dev

在不知道类结构的情况下重载赋值运算符

来自分类Dev

如何在不知道div ID的情况下删除div的类?

来自分类Dev

msgpack:在不知道类型的情况下解压缩自定义类

来自分类Dev

如何在不知道div ID的情况下删除div的类?

来自分类Dev

在不知道Java中特定文件夹中的名称的情况下加载类

来自分类Dev

jQuery-在不知道名称的情况下按父类选择元素

来自分类Dev

PHP如何在不知道扩展名的情况下从URL获取图像

来自分类Dev

如何在不知道bash扩展名的情况下提取各种zip文件

来自分类Dev

.htaccess在不知道扩展名的情况下重写为映像

来自分类Dev

在不知道文件名的情况下使用 Javascript Fetch API 读取文件

来自分类Dev

data.table:在不知道列名的情况下创建条件变量的正确方法?

来自分类Dev

在不知道其ID的情况下将焦点设置为动态创建的输入字段

来自分类Dev

在不知道类型的情况下用Java创建集合?

来自分类Dev

不知道如何在没有OutOfMemory Android的情况下创建大型阵列

来自分类Dev

如何在不知道数组长度的情况下创建数组

来自分类Dev

如何在不知道特定IP版本的情况下创建“ IpAddr”?

来自分类Dev

如何在不知道输入类型的情况下创建填充矩阵的方法

来自分类Dev

如何在不知道字段是什么的情况下创建 ElasticSearch 查询?

来自分类Dev

如何在不知道形式参数类型的情况下找到构造函数?

来自分类Dev

在不知道ID的情况下进行更新

Related 相关文章

  1. 1

    在不知道类的情况下查询本体

  2. 2

    在不知道类名的情况下获取静态属性的值

  3. 3

    如何在不知道类名的情况下使用NDB查询

  4. 4

    在不知道类名的情况下获取静态属性的值

  5. 5

    在不知道函数参数的情况下使用lambda创建std :: function

  6. 6

    如何在不知道类的情况下从另一个 dll 调用类的函数?

  7. 7

    如何在不知道按钮 ID/类或表单 ID/类的情况下提交表单?

  8. 8

    如何在不知道类型的情况下从泛型函数调用函数?

  9. 9

    在不知道类型的情况下将对象转换为通用类

  10. 10

    在不知道类结构的情况下重载赋值运算符

  11. 11

    如何在不知道div ID的情况下删除div的类?

  12. 12

    msgpack:在不知道类型的情况下解压缩自定义类

  13. 13

    如何在不知道div ID的情况下删除div的类?

  14. 14

    在不知道Java中特定文件夹中的名称的情况下加载类

  15. 15

    jQuery-在不知道名称的情况下按父类选择元素

  16. 16

    PHP如何在不知道扩展名的情况下从URL获取图像

  17. 17

    如何在不知道bash扩展名的情况下提取各种zip文件

  18. 18

    .htaccess在不知道扩展名的情况下重写为映像

  19. 19

    在不知道文件名的情况下使用 Javascript Fetch API 读取文件

  20. 20

    data.table:在不知道列名的情况下创建条件变量的正确方法?

  21. 21

    在不知道其ID的情况下将焦点设置为动态创建的输入字段

  22. 22

    在不知道类型的情况下用Java创建集合?

  23. 23

    不知道如何在没有OutOfMemory Android的情况下创建大型阵列

  24. 24

    如何在不知道数组长度的情况下创建数组

  25. 25

    如何在不知道特定IP版本的情况下创建“ IpAddr”?

  26. 26

    如何在不知道输入类型的情况下创建填充矩阵的方法

  27. 27

    如何在不知道字段是什么的情况下创建 ElasticSearch 查询?

  28. 28

    如何在不知道形式参数类型的情况下找到构造函数?

  29. 29

    在不知道ID的情况下进行更新

热门标签

归档