从ArrayList访问元素

时间:2014-02-12 08:59:37

标签: java arrays arraylist

我已经学会了如何Create an Arraylist of Objects,这样的数组本质上是动态的。例如要创建一个包含3个字段的对象数组(类Matrices的实例),代码如下所示:

ArrayList<Matrices> list = new ArrayList<Matrices>();
list.add( new Matrices(1,1,10) );
list.add( new Matrices(1,2,20) );

此外,Matrices类是这样的:

public class Matrices{
int x;
int y;
int z;

Matrices(int x,int y, int z){
this.x = x;
this.y = y;
this.z = z;
}
}

现在,我如何访问此数组名称list中任何元素的每个字段?特别是,如何从这个数组的第二个元素访问20字段,其值为(1,2,20)?

6 个答案:

答案 0 :(得分:8)

您只需使用get方法:

// 2nd element; Java uses 0-based indexing almost everywhere
Matrices element = list.get(1);

之后使用Matrices引用做什么取决于你 - 你已经显示了构造函数调用,但是我们不知道这些值是否会作为属性或其他任何内容公开。

通常,当您使用课程时,您应该查看其文档 - 在本例中为documentation for ArrayList。查看方法列表,尝试找到与您尝试的内容相匹配的内容。

您还应该阅读tutorial on collections以获取有关Java中集合库的更多信息。

答案 1 :(得分:1)

Matrices element = list.get(1);将完成这项工作。 ArrayList是零索引集合。所以list.get(1)将给出第二个元素。

您应该检查相关的apis,ArrayList

答案 2 :(得分:0)

我将此视为搜索算法问题。

迭代list,检查当前迭代的元素是否包含所需的值。

答案 3 :(得分:0)

Matrices m = list.get(1)

请阅读java docs

答案 4 :(得分:0)

您可以从列表中获取Matrices对象:

 Matrices m = list.get(0);// fist element in list
 m.anyPublicMethod();

答案 5 :(得分:0)

Matrice m = list.get(1);
int twenty = m.getThirdElement(); // or whatever method you named to get the 3rd element (ie 20);

// in one go :
twenty = list.get(1).getThirdElement();