如何获取ArrayList中某个元素的索引?

时间:2014-08-02 21:05:20

标签: java arrays arraylist

我正在学习ArrayList,我想知道,你如何获得ArrayList中某个元素的索引?

我知道您可以使用myArray.contains("string"),但如何在不执行myArray.get()之类的情况下找到元素的索引?

2 个答案:

答案 0 :(得分:1)

您可以使用:

Foo element = //...
ArrayList<Foo> list = //...
int index = list.indexOf(element) // retrieve index of element - first occurrence

示例:

new ArrayList(Arrays.asList(1, 2, 3, 4, 5, 4, 3, 2, 1)).indexOf(3); // returns 2

索引的工作方式与数组的索引相同(第一个元素的索引为0,第二个元素的索引为1等)。有关此方法的详细信息,请参阅http://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html#indexOf-java.lang.Object-

这也适用于java.util.List的任何实现,如果您想要最后一次出现,请使用http://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html#lastIndexOf-java.lang.Object-

使用上面的示例,lastIndexOf()的工作方式不同:

new ArrayList(Arrays.asList(1, 2, 3, 4, 5, 4, 3, 2, 1)).lastIndexOf(3);
// returns 6

答案 1 :(得分:0)

您使用ArrayList#indexOf .....