首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Java中创建栈的栈

在Java中创建栈的栈
EN

Stack Overflow用户
提问于 2017-12-24 14:58:16
回答 1查看 182关注 0票数 1

我想创建一个Integer堆栈。这样我就可以在主堆栈中推送一个新的整数堆栈。

如何创建?为此,我编写了以下代码:

代码语言:javascript
运行
复制
import java.util.*;
import java.io.*;

public class Containers{
    static Stack<Integer> subStack = new Stack<Integer>();
    static Stack<subStack> main  = new Stack<subStack>();
   public static int addToStatck(char cont){
       //for(int j=0;j<)
        return 0;
    }
    public static void main(){
        Scanner sc = new Scanner(System.in);
        String container = sc.next();
        Stack sub = new Stack();
        sub.push(container.charAt(0));
        main.push(sub);
        int ans = 0;
        for(int i=0;i<container.length();++i){
            ans+=addToStatck(container.charAt(i));
        }

    }

}

它向我显示了以下输出:

EN

回答 1

Stack Overflow用户

发布于 2017-12-24 14:59:46

没有subStack类型(除非您创建了这样的类型)。

main的类型应为:

代码语言:javascript
运行
复制
static Stack<Stack<Integer>> main = new Stack<>();

而且你的电脑似乎也没有任何用处

代码语言:javascript
运行
复制
static Stack<Integer> subStack = new Stack<Integer>();

变量。

另外,

代码语言:javascript
运行
复制
Stack sub = new Stack();

应该是

代码语言:javascript
运行
复制
Stack<Integer> sub = new Stack<>();

总结一下:

代码语言:javascript
运行
复制
public class Containers{
    static Stack<Stack<Integer>> main = new Stack<>();
    public static int addToStatck(char cont){
        //for(int j=0;j<)
        return 0;
    }
    public static void main(){
        Scanner sc = new Scanner(System.in);
        String container = sc.next();
        Stack<Integer> sub = new Stack<>();
        sub.push(Integer.valueOf (container.charAt(0)));
        main.push(sub);
        int ans = 0;
        for(int i=0;i<container.length();++i){
            ans+=addToStatck(container.charAt(i));
        }   
    }  
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47958678

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档