📅  最后修改于: 2023-12-03 15:37:35.899000             🧑  作者: Mango
在Java中,堆栈(Stack)是一种常见的数据结构,它具有后进先出(LIFO)的特点,即最后进入堆栈的元素最先被取出。Java提供了一组用于操作堆栈的方法,其中之一就是 lastIndexOf() 方法。
lastIndexOf() 方法用于在堆栈中从上往下查找指定元素最后一次出现的位置。如果找到了指定元素,则返回它在堆栈中的位置,否则返回 -1。该方法的声明如下:
public int lastIndexOf(Object obj)
下面是一个使用 lastIndexOf() 方法的示例。假设我们有一个堆栈,其中包含一些字符串元素,现在需要查找其中最后一个元素所在的位置。可以使用 lastIndexOf() 方法来实现:
import java.util.Stack;
public class StackDemo {
public static void main(String[] args) {
Stack<String> stack = new Stack<>();
// 添加元素
stack.push("Java");
stack.push("Python");
stack.push("PHP");
stack.push("Ruby");
stack.push("JavaScript");
// 查找最后一个元素所在位置
int index = stack.lastIndexOf("Python");
if (index == -1) {
System.out.println("堆栈中不存在指定元素");
} else {
System.out.println("指定元素最后出现位置为:" + index);
}
}
}
输出结果为:
指定元素最后出现位置为:1
上述示例创建了一个堆栈,使用 push() 方法向其中添加了一些字符串元素。然后使用 lastIndexOf() 方法查找了堆栈中最后一个元素 Python 所在的位置,最终输出了它的下标-1。