微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决如何在不删除其元素的情况下有效地迭代 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 举报,一经查实,本站将立刻删除。