Heim > Java > javaLernprogramm > Beispiele für die Verwendung von Java-Stack-Klassen (wie man Stack in Java verwendet)

Beispiele für die Verwendung von Java-Stack-Klassen (wie man Stack in Java verwendet)

高洛峰
Freigeben: 2017-01-24 15:00:09
Original
1426 Leute haben es durchsucht

Verwenden Sie in JAVA die Konstruktormethode der Klasse java.util.Stack, um Objekte zu erstellen.

öffentliche Klasse Stack erweitert Vektor

Konstruktor: public Stack() erstellt einen leeren Stapel.

Methode: 1. public push (item) Schieben Sie das Element oben auf den Stapel. Seine Wirkung ist die gleiche wie bei addElement (item).

Das Parameterelement ist das Element, das oben auf den Stapel gelegt wird. Rückgabe: item-Parameter;

2. public pop() entfernt das Objekt oben auf dem Stapel und gibt das Objekt als Wert der Funktion zurück.

Rückgabe: das oberste Objekt des Stapels (das letzte Element im Vektorobjekt).

Wirft die Ausnahme EmptyStackException aus, wenn der Stapel leer ist. . .

3. public peek() Sehen Sie sich das Objekt oben auf dem Stapel an, ohne es zu entfernen. .

Rückgabe: das oberste Objekt des Stapels (das letzte Element im Vektorobjekt).

Wirft die Ausnahme EmptyStackException aus, wenn der Stapel leer ist. . .

4. public boolean empty (testet, ob der Stapel leer ist.) Gibt nur dann „true“ zurück, wenn der Stapel keine Elemente enthält, andernfalls wird „false“ zurückgegeben.

5. Objekt o) Gibt die Position des Objekts im Stapel zurück, mit 1 als Basis. Wenn Objekt o ein Element im Stapel ist, gibt diese Methode den Abstand von der nächstgelegenen Vorkommensposition zum oberen Ende des Stapels zurück Das oberste Element im Stapel ist 1. Verwenden Sie die Methode „equals“, um o mit Elementen auf dem Stapel zu vergleichen. . .

Parameter: o Zielobjekt;

/** 
 * @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(); //换行
    }
}
Nach dem Login kopieren

Weitere Artikel zu Java-Stack-Klassen (wie man Stack in Java verwendet) finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage