Java ArrayList indexOf()方法返回指定元素在arraylist中的位置。
indexOf()方法的语法为:
arraylist.indexOf(Object obj)
obj - 要返回其位置的元素
如果同一元素obj存在于多个位置,则返回arraylist中第一个出现的元素的位置。
从arraylist返回指定元素的位置
注意:如果列表中不存在指定的元素,则该indexOf()方法返回 -1。
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
//创建 ArrayList
ArrayList<Integer> numbers = new ArrayList<>();
// 将元素插入到arraylist
numbers.add(22);
numbers.add(13);
numbers.add(35);
System.out.println("Number ArrayList: " + numbers);
//查找元素13的位置
int position1 = numbers.indexOf(13);
System.out.println("13的索引值: " + position1);
//查找元素50的位置
int position2 = numbers.indexOf(50);
System.out.println("50的索引值: " + position2);
}
}
输出结果
Number ArrayList: [22, 13, 35]
13的索引值: 1
50的索引值: -1
在上面的示例中,我们创建了一个名为numbers的数组列表。注意这些表达式,
// 反回 1
numbers.indexOf(13)
// 返回 -1
numbers.indexOf(50)
在此,indexOf()方法成功返回元素13的位置。但是,元素50在arraylist中不存在。因此,该方法返回-1。
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
//创建 ArrayList
ArrayList<String> languages = new ArrayList<>();
//将元素插入到arraylist
languages.add("JavaScript");
languages.add("Python");
languages.add("Java");
languages.add("C++");
languages.add("Java");
System.out.println("编程语言: " + languages);
//获取Java的位置
int position = languages.indexOf("Java");
System.out.println("第一次出现Java: " + position);
}
}
输出结果
编程语言: [JavaScript, Python, Java, C++, Java]
第一次出现Java: 2
在上面的示例中,我们创建了一个名为languages的数组列表。在这里,我们使用indexOf()方法来获取元素Java的位置。
但是,Java存在于列表中的两个不同位置。在这种情况下,该方法返回Java第一次出现(即2)的位置。
并且,如果我们想获得的最后一次出现Java的位置,可以使用lastIndexOf()方法。
注意:我们还可以使用Java ArrayList get()方法来获取指定位置的元素。