java - 无法让我的堆栈程序使用 pop

标签 java string stack java.util.scanner

所以我尝试在程序中使用 pop(),但我不完全理解为什么它无法运行。是因为我使用扫描仪吗?有人可以解释为什么我的代码告诉我reverseStack中的pop()不能应用于(java.util.Stack) pop(stack); ^ 这是代码

import java.util.*;
public class reverseStack{

    Scanner scan;
    Stack <String>stack;
    public static void main(String [] args)
    {
        Scanner scan = new Scanner (System.in);
        System.out.println("Type something: ");
        Stack<String> stack = new Stack<String>();
        scan = new Scanner(scan.nextLine());
        while (scan.hasNext()){
            stack.push(scan.next());
        }
        System.out.println(stack);
        printStack(stack);  
        pop(stack);
    }


    private static void printStack(Stack<String>s){
        if(s.isEmpty())
            {
            System.out.println("true");
        }
        else {
        System.out.println("false");
             }
    }
    void pop(){
        while(!stack.empty()){
            System.out.println(stack.pop());
        }
    }
}

谢谢大佬

最佳答案

您在 reverseStack 中定义的 pop 不接受任何参数。这就是为什么你不能将它作为参数传递stack

关于java - 无法让我的堆栈程序使用 pop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40728233/

相关文章:

swift - 希腊字母的字符串范围不一致

Python从字符串中提取3个整数

java - 将 RMI 限制到一个端口的含义

java - 每个蓝牙设备都有自己唯一的 MAC 地址吗?我们如何在应用程序中访问它?

JDK 1.8.0_161 中的 Java Mission Control 在 Mac OS X 上启动时卡住

c++ - c++中可修改的char数组类型是什么?

c - 如何确定嵌入式程序正在使用多少堆栈空间

java - springboot 不会从 wsdl 生成类

java - 字符串获取行尾的文本

c - 返回指向自动变量的指针的函数