Java:在ArrayList中搜索来自object的元素

时间:2012-12-31 19:51:26

标签: java object arraylist point indexof

假设我有这个:

    // Create arrayList
    ArrayList<Point> pointList = new ArrayList<Point>();

    // Adding some objects
    pointList.add(new Point(1, 1);
    pointList.add(new Point(1, 2);
    pointList.add(new Point(3, 4);

如何通过搜索其中一个参数来获取对象的索引位置? 我尝试了这个但是没有用。

<击>

<击>
    pointList.indexOf(this.x(1));

<击>

提前致谢。

2 个答案:

答案 0 :(得分:3)

您必须自己遍历列表:

int index = -1;

for (int i = 0; i < pointList.size(); i++)
    if (pointList.get(i).x == 1) {
        index = i;
        break;
    }

// now index is the location of the first element with x-val 1
// or -1 if no such element exists

答案 1 :(得分:1)

您需要创建一个自定义循环来执行此操作。

public int getPointIndex(int xVal) {
    for(int i = 0; i < pointList.size(); i++) {
        if(pointList.get(i).x == xVal) return i;
    }
    return -1; //Or throw error if it wasn't found.
}