跳到主要内容

Java ArrayList indexOf() 方法

indexOf() 方法的语法是:

arraylist.indexOf(Object obj)

这里的 arraylistArrayList 类的一个对象。

indexOf() 方法的参数

indexOf() 方法接受单个参数。

  • obj - 需要返回位置的元素

如果相同的元素 obj 在多个位置存在,则返回在 arraylist 中首次出现的该元素的位置。

indexOf() 方法的返回值

  • 返回 arraylist 中指定元素的位置

注意:如果指定的元素在列表中不存在,indexOf() 方法返回 -1

示例 1:获取 ArrayList 元素的索引

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("数字 ArrayList: " + numbers);

// 查找 13 的位置
int position1 = numbers.indexOf(13);
System.out.println("13 的索引: " + position1);

// 查找 50 的位置
int position2 = numbers.indexOf(50);
System.out.println("50 的索引: " + position2);
}
}

输出

数字 ArrayList: [22, 13, 35]
13 的索引: 1
50 的索引: -1

在上面的示例中,我们创建了一个名为 numbers 的 arraylist。请注意这些表达式,

// 返回 1
numbers.indexOf(13)

// 返回 -1
numbers.indexOf(50)

这里,indexOf() 方法成功地返回了元素 13 的位置。然而,元素 50 不存在于 arraylist 中。因此,该方法返回 -1

示例 2:获取元素首次出现的位置

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 的 arraylist。这里,我们使用了 indexOf() 方法来获取元素 Java 的位置。

然而,Java 在列表中有两个不同的位置。在这种情况下,该方法返回 Java 首次出现的位置(即 2)。

如果我们想要获取 Java 最后一次出现的位置,我们可以使用 lastIndexOf() 方法。要了解更多,请访问 Java ArrayList lastIndexOf()

注意:我们也可以使用 Java ArrayList get() 方法来获取特定位置的元素。