Java:将对象类型的 Array 和 ArrayList 存储在 ArrayList 中(作为参数传递给方法)

堆栈用户

爪哇:

我的方法的相关问题部分是:

public void createArrays(ArrayList<SomeClass> objectList) {
    SomeClass[] array = {objectList.toArray(new SomeClass[objectList.size()])};
    ArrayList<SomeClass> = objectList;
    objectList.get(0).SomeClassInstanceMethod();
}
  • 我有一个 A 类和 B 类对象的列表。

  • 我的项目中的其他一些类制作这些列表,然后将其中一个列表传递给 createArrays(将它们用于某些任务)

  • 此方法,除其他外,创建 SomeClass 类型的 Array 和 ArrayList(即 A 或 B) • 然后,在一个数组的元素上,createArrays 调用 A 和 B 都具有的实例方法

    我尝试了许多组合,包括在参数 ArrayList 中获取 0-index 对象的类,但我永远无法创建未明确定义的类型的数组。我怎样才能做到这一点?

说明:我正在尝试(1)创建与参数数组具有相同类型的数组,并且我还想(2)调用数组中元素的实例方法(这会产生问题,因为如果我使用超类,它不会调用 A 和 B 等子类独有的方法)。

最终目标:我准备了一堆不同类实例的列表,我想对它们执行完全相同的过程,所以这就是为什么我想要一个方法来对它传递的任何对象列表执行相同的操作。

沙迪亚

您可以将其转换ArrayListObject数组

Object[] objectArr = objectList.toArray();

然后,如果您想重新获取对象数组中的元素,SomeClass请使用instanceOf方法检查它并强制转换为SomeClass类型。

if(objectArr[0] instanceOf SomeClass) {
  SomeClass instance = (SomeClass) objectArr[0];
}

否则你可以将整个对象数组转换为 SomeClass 数组

  if (objectArr instanceof SomeClass[]) {
        SomeClass[] instances = (SomeClass[]) objectArr;
}

此外,您可以尝试以下方法,将类类型作为参数传递给getArray方法。

public <T> T getArray(Class<T> type, Object[] objectArr) throws Exception {

    T instances = type.cast(objectArr);
    return instances;
}

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Java

将Class作为参数传递给返回该类的对象的方法和ArrayList

来自分类Dev

将对对象的引用存储在ArrayList中

来自分类Dev

写入文件和从文件读取ArrayList中存储的对象

来自分类Dev

用Java在ArrayList中存储两种类型的对象

来自分类Dev

传递新的 ArrayList 与传递 ArrayList 作为函数中的参数(Java)

来自分类Dev

访问存储在ArrayList中的对象的最佳方法?

来自分类Dev

从存储在Arraylist中的Arraylist中访问数据-Java

来自分类Dev

Array和ArrayList

来自分类Dev

Java ArrayList存储

来自分类Dev

Java哈希表存储桶作为ArrayList

来自分类Java

如何在Java中创建Array,ArrayList,Stack和Queue?

来自分类Dev

Java中的ArrayList和更多原始类型

来自分类Dev

无法访问存储在ArrayList中的对象

来自分类Dev

如何存储并访问ArrayList中的类对象?

来自分类Dev

如何比较存储在ArrayList中的对象属性?

来自分类Dev

将类对象存储在 ArrayList 中

来自分类Java

Java中的ArrayList和输入

来自分类Dev

Java中的多态和ArrayList

来自分类Java

Java中的ArrayList如何存储项目

来自分类Dev

在 Arraylist Java 中存储用户输入

来自分类Java

为什么toString()方法在Java中的Array和ArrayList对象之间工作不同

来自分类Dev

将文件读取到Array,然后将Array存储到ArrayList Java中

来自分类Dev

[Java]如何将对象的ArrayList中的内容设置为不同类型的变量?

来自分类Dev

将ArrayList <SomeClass>作为参数ArrayList <Comparable>传递给单独类中的方法

来自分类Dev

Java:如何存储和传输巨大的 Integer-ArrayList

来自分类Java

ArrayList对象如何在Java中存储在HashSet中?

来自分类Dev

如何从存储在 Arraylist 中的 Hashmap 中搜索和提取值

来自分类Java

如何检索存储在Java ArrayList中的对象值

来自分类Java

Arraylist参数和参数

Related 相关文章

  1. 1

    将Class作为参数传递给返回该类的对象的方法和ArrayList

  2. 2

    将对对象的引用存储在ArrayList中

  3. 3

    写入文件和从文件读取ArrayList中存储的对象

  4. 4

    用Java在ArrayList中存储两种类型的对象

  5. 5

    传递新的 ArrayList 与传递 ArrayList 作为函数中的参数(Java)

  6. 6

    访问存储在ArrayList中的对象的最佳方法?

  7. 7

    从存储在Arraylist中的Arraylist中访问数据-Java

  8. 8

    Array和ArrayList

  9. 9

    Java ArrayList存储

  10. 10

    Java哈希表存储桶作为ArrayList

  11. 11

    如何在Java中创建Array,ArrayList,Stack和Queue?

  12. 12

    Java中的ArrayList和更多原始类型

  13. 13

    无法访问存储在ArrayList中的对象

  14. 14

    如何存储并访问ArrayList中的类对象?

  15. 15

    如何比较存储在ArrayList中的对象属性?

  16. 16

    将类对象存储在 ArrayList 中

  17. 17

    Java中的ArrayList和输入

  18. 18

    Java中的多态和ArrayList

  19. 19

    Java中的ArrayList如何存储项目

  20. 20

    在 Arraylist Java 中存储用户输入

  21. 21

    为什么toString()方法在Java中的Array和ArrayList对象之间工作不同

  22. 22

    将文件读取到Array,然后将Array存储到ArrayList Java中

  23. 23

    [Java]如何将对象的ArrayList中的内容设置为不同类型的变量?

  24. 24

    将ArrayList <SomeClass>作为参数ArrayList <Comparable>传递给单独类中的方法

  25. 25

    Java:如何存储和传输巨大的 Integer-ArrayList

  26. 26

    ArrayList对象如何在Java中存储在HashSet中?

  27. 27

    如何从存储在 Arraylist 中的 Hashmap 中搜索和提取值

  28. 28

    如何检索存储在Java ArrayList中的对象值

  29. 29

    Arraylist参数和参数

热门标签

归档