java - 从ArrayList获取类

标签 java arraylist

我想知道如何更改 ArrayList 中对象内的变量。

我已经尝试过myList.get(i);但这会返回 <Object>我不明白该怎么做。

(基本上)我拥有的:

ArrayList list = new ArrayList();
Issue issue = new Issue();
list.add(issue);

我想稍后通过列表访问:

issue.myString;

为了澄清一下,我有一个 class Issue 的实例里面ArrayList list ,我想改变 issue.myString

最佳答案

您(至少)有两个选择。

列表仅包含问题

在这种情况下,您可以使用类型列表:

List<Issue> list = new ArrayList<>();
Issue issue = new Issue();
list.add(issue);

这样,像 list.get(i) 这样的调用将返回一个 Issue

列表包含问题和其他非问题对象

List list = new ArrayList();
Issue issue = new Issue();
list.add(issue);
Object object = new Object();
list.add(object);

在这种情况下,您必须首先检查该对象是否是一个 Issue

Object rawItem = list.get(i);
if(rawItem instanceof Issue) {
    Issue issue = (Issue) rawItem;
    ...
}

关于java - 从ArrayList获取类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40696911/

相关文章:

Java EE、CDI - @inject 不起作用;无效的

Java - 将 2D 字符串部分转换为 2D Integer ArrayList

java - 如何过滤整数并将它们从字符串复制到新数组

java - 按顺序循环 ArrayList<String>

java - 使用 ArrayList 作为类中的静态属性?

java - Spark 流式自定义指标

java - 用于消除 if 的 Lambda 用法

Java 8 流 : streaming files and delete after read

java - 弗林克 SQL : Repeating grouping keys in result of GROUP BY query

java - 为什么我会得到一个类转换异常?