Heim > Java > javaLernprogramm > Grafische Codeanalyse des Java-Sammlungsstapels

Grafische Codeanalyse des Java-Sammlungsstapels

黄舟
Freigeben: 2017-03-13 17:41:36
Original
1758 Leute haben es durchsucht

Stack ist ein Stack und seine Funktion ist FILO (First In Last Out). Stack wird von Vector (Vector Queue ) geerbt. Da Vector mit Array implementiert wird, wird Stack auch über Arrays anstelle von verknüpften Listen implementiert.

Die Beziehung zwischen Stack und Collection ist wie folgt:



Quellcode basierend auf Java8:

public  class Stack<E> extends Vector<E> {

    public Stack() {//创建空栈
    }

    public E push(E item) {//入栈
        addElement(item);
        return item;
    }
    //出栈
    public synchronized E pop() {
        E       obj;
        int     len = size();
        obj = peek();
        removeElementAt(len - 1);
        return obj;
    }
    //返回栈顶元素,但并不出栈
    public synchronized E peek() {
        int     len = size();

        if (len == 0)
            throw new EmptyStackException();
        return elementAt(len - 1);
    }
    //判断栈是否为空
    public boolean empty() {
        return size() == 0;
    }
    //查找元素并返回栈深
    public synchronized int search(Object o) {
        int i = lastIndexOf(o);

        if (i >= 0) {
            return size() - i;
        }
        return -1;
    }

    //序列版本号
    private static final long serialVersionUID = 1224463164541339165L;
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonGrafische Codeanalyse des Java-Sammlungsstapels. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen 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