如何在不删除其元素的情况下有效地迭代 Stack ?

问题描述

我有一个地图堆栈,我想做的是迭代堆栈的每个元素(在每个地图上)而不丢失它们(不删除堆栈的元素)。这样做的最佳方法是什么?

这是我的代码

import java.util.*;
class TablaDeSimbolos{
    //private static Map<String,Tipo> tabla = new HashMap<>();
    private static Stack<Map<String,Tipo>> pila = new Stack<>();
    private static int numBloques = 1;
    static{
        Map<String,Tipo> tabla = new HashMap<>();
        pila.push(tabla);
    }
    public static void put(String id,Tipo tipo){
        pila.peek().put(id,tipo);
    }

    public static Tipo get(String id){
        return buscar(String ident);
    }
    public static boolean estaDeclarada(String id){
        return pila.peek().get(id)!=null;
    }
    public static void nuevoBloque(){
        numBloques++;
        Map<String,Tipo> tabla = new HashMap<>();
        pila.push(tabla);
    }

    public static void finBloque(){
        if(!pila.empty()) {
            pila.pop();
            numBloques--;
        }
    }

    private static Tipo buscar(String ident){ //Primero se busca en el bloque actual 
        //SEARCHING THE ELEMENT AND RETURNING IF IT EXISTS
    }
}
enum Tipo{
    INT,FLOAT,CHAR;
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)