Stack栈

import java.util.Stack;

public class StackDemo {
    public static void main(String[] args) {
        // 创建栈对象
        Stack<String> stack = new Stack<>();

        // 1. push:压入元素(栈顶)
        stack.push("A");
        stack.push("B");
        stack.push("C");
        System.out.println("压入元素后栈:" + stack); // [A, B, C](栈底→栈顶:A→B→C)

        // 2. peek:查看栈顶(不删除)
        String top = stack.peek();
        System.out.println("栈顶元素(peek):" + top); // C,栈仍为 [A, B, C]

        // 3. pop:弹出栈顶(删除并返回)
        String popped = stack.pop();
        System.out.println("弹出的元素(pop):" + popped); // C,栈变为 [A, B]

        // 4. empty:判断是否为空
        boolean isEmpty = stack.empty();
        System.out.println("栈是否为空:" + isEmpty); // false

        // 5. search:查找元素位置(栈顶为1)
        int pos = stack.search("A");
        System.out.println("元素A的位置:" + pos); // 2(栈顶是B,位置1;A在位置2)

        // 空栈pop/peek会抛异常,需先判断
        stack.pop(); // 弹出B → [A]
        stack.pop(); // 弹出A → 空栈
        // stack.pop(); // 抛出 EmptyStackException
        if (!stack.empty()) {
            stack.pop(); // 避免异常
        }
    }
}

全部评论

相关推荐

嵌入式的小白:正常啊,面试会考察,沟通能力,代码等基础能力,技术积累,然后通过你干的项目来判断你能独立的完成什么体量的项目,还得看你和岗位的匹配度的,这些全部考察完是要花时间的,除非是就想招打杂的可能考察的就少点
应届生简历当中,HR最关...
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务