📅  最后修改于: 2023-12-03 15:37:35.912000             🧑  作者: Mango
Java中的堆栈是一种后进先出的数据结构,最近添加的元素是最先被删除的。在Java中使用堆栈可以使用Java提供的Stack类或Deque接口的实现类,比如ArrayDeque类。其中,Stack类提供了lastIndexOf(Object, int)方法,用于查找堆栈中指定元素最后一次出现的位置。
lastIndexOf(Object, int)方法有两个参数:
lastIndexOf(Object, int)方法的返回值为int类型,表示指定元素在堆栈中最后一次出现的位置。
以下代码演示如何使用Stack类的lastIndexOf(Object, int)方法查找指定元素在堆栈中最后一次出现的位置。
import java.util.Stack;
public class StackExample {
public static void main(String[] args) {
Stack<String> stack = new Stack<>();
stack.push("Java");
stack.push("C++");
stack.push("Python");
stack.push("Java");
stack.push("C#");
stack.push("Java");
int lastIndex = stack.lastIndexOf("Java", 4);
System.out.println("Last index of Java after 4th element: " + lastIndex);
}
}
输出结果为:
Last index of Java after 4th element: 0
以上代码中,我们先创建了一个Stack对象,并依次将字符串"Java"、"C++"、"Python"、"Java"、"C#"和"Java"添加到堆栈中。然后,我们使用lastIndexOf函数查找在第4个元素之后,字符串"Java"在堆栈中的最后一次出现的位置。由于第4个元素之后有2个"Java"字符串,但lastIndexOf方法只查找第一个符合条件的元素,因此最后输出结果为0,表示第一个"Java"字符串的位置在第0个元素。
使用lastIndexOf(Object, int)方法时,需要注意以下事项:
因此,在实际应用中应该根据具体情况选择合适的搜索范围和处理方法。