Maison >Java >javaDidacticiel >Exemples d'utilisation de la classe de pile Java (comment utiliser la pile en Java)

Exemples d'utilisation de la classe de pile Java (comment utiliser la pile en Java)

高洛峰
高洛峰original
2017-01-24 15:00:091433parcourir

En JAVA, utilisez la méthode constructeur de la classe java.util.Stack pour créer des objets.

public class Stack extends vector

Constructeur : public Stack() crée une pile vide.

Méthode : 1. public push (item) Poussez l'élément en haut de la pile. Son effet est le même que celui de addElement (item).

L'élément paramètre est l'élément placé en haut de la pile. Retour : paramètre d'élément ;

2. public pop () supprime l'objet en haut de la pile et renvoie l'objet comme valeur de la fonction.

Renvoie : l'objet supérieur de la pile (le dernier élément de l'objet Vector).

Lève une exception : EmptyStackException si la pile est vide. . .

3. public peek() Affichez l'objet en haut de la pile sans le supprimer. .

Retour : l'objet supérieur de la pile (le dernier élément de l'objet Vector).

Lève une exception : EmptyStackException si la pile est vide. . .

4. public booléen vide (teste si la pile est vide.) Renvoie vrai si et seulement si la pile ne contient aucun élément, sinon renvoie faux.

5. object o) Renvoie la position de l'objet dans la pile, avec 1 comme base. Si l'objet o est un élément dans la pile, cette méthode renvoie la distance entre la position d'occurrence la plus proche et le sommet de la pile. l'élément supérieur de la pile est 1. Utilisez la méthode égale pour comparer o avec les éléments de la pile. . .

Paramètres : o Objet cible ;

/** 
 * @author yuanLi
 */
package thinkingJava;
import java.util.*;

import com.sun.org.apache.bcel.internal.generic.NEW;
/** 
 * 
 */
public class StackTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Stack stack = new Stack(); // 创建堆栈对象 
        System.out.println("11111, absdder, 29999.3 三个元素入栈"); 
        stack.push(new Integer(11111)); //向 栈中 压入整数 11111
        printStack(stack);  //显示栈中的所有元素

        stack.push("absdder"); //向 栈中 压入
        printStack(stack);  //显示栈中的所有元素

        stack.push(new Double(29999.3)); //向 栈中 压入
        printStack(stack);  //显示栈中的所有元素

        String s = new String("absdder");
        System.out.println("元素absdder在堆栈的位置"+stack.search(s));      
        System.out.println("元素11111在堆栈的位置"+stack.search(11111));

        System.out.println("11111, absdder, 29999.3 三个元素出栈"); //弹出 栈顶元素 
        System.out.println("元素"+stack.pop()+"出栈");
        printStack(stack);  //显示栈中的所有元素
        System.out.println("元素"+stack.pop()+"出栈");
        printStack(stack);  //显示栈中的所有元素
        System.out.println("元素"+stack.pop()+"出栈");
        printStack(stack);  //显示栈中的所有元素

 
    }

    private static void printStack(Stack<Integer> stack ){
        if (stack.empty())
            System.out.println("堆栈是空的,没有元素");
            else {
                System.out.print("堆栈中的元素:");
                Enumeration items = stack.elements(); // 得到 stack 中的枚举对象 
                while (items.hasMoreElements()) //显示枚举(stack ) 中的所有元素
                    System.out.print(items.nextElement()+" ");
            }
        System.out.println(); //换行
    }
}

Pour plus d'exemples d'utilisation de la classe de pile Java (comment utiliser la pile en Java), veuillez faire attention au site Web chinois de PHP !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn