📅  最后修改于: 2023-12-03 15:01:56.966000             🧑  作者: Mango
在Java中,Stack类是一个后进先出(LIFO)的数据结构,它继承自Vector类。Stack类提供了一系列方法来操作堆栈,其中包括indexOf(Object, int)方法。
该方法的作用是在堆栈中从指定索引处开始查找指定元素的位置,并返回该元素在堆栈中的索引。如果指定的元素不存在于堆栈中,则返回-1。
public synchronized int indexOf(Object o, int index)
查找到的元素在堆栈中的索引,如果元素不存在则返回-1。
import java.util.Stack;
public class Main {
public static void main(String[] args) {
// 创建一个Stack对象
Stack<String> stack = new Stack<>();
// 添加元素到堆栈
stack.push("Java");
stack.push("Python");
stack.push("C++");
stack.push("JavaScript");
stack.push("Ruby");
// 查找元素在堆栈中的索引
int index = stack.indexOf("C++", 0);
if (index != -1) {
System.out.println("元素 C++ 在堆栈中的索引位置为: " + index);
} else {
System.out.println("元素 C++ 不存在于堆栈中");
}
}
}
上述示例中,我们首先创建了一个Stack对象,并将一些元素添加到堆栈中。然后,我们使用indexOf方法在堆栈中查找元素"C++"的索引。由于"C++"存在于堆栈中,我们得到了索引值2,并输出了相应的结果。
请注意,在该示例中,我们指定了开始查找的索引位置为0。这意味着查找操作将从堆栈的顶部开始,并向下进行,直到找到指定的元素或到达指定的索引位置为止。
以上就是Java中Stack类的indexOf(Object, int)方法的介绍和示例。使用该方法,您可以方便地查找堆栈中特定元素的位置。