-1

これが私がこれまでに持っているものです:

System.out.println("\fStack - ArrayList Demo\n");

        ArrayList<String> al = new ArrayList<String>();
        Stack<String> st = new Stack<String>();

        // Start with a few elements to the ArrayList
        al.add("A");
        al.add("B");
        al.add("C");

        st.addAll(al); // Retrieve ArrayList elements for the stack and add them there
        al.clear(); // Clear arraylist for storage later


        // Pop out the last element in the stack.
        System.out.println("\nPop out the last element: "+al.add(st.pop()));
        System.out.println("What's left of the stack: "+st+"\n");
        System.out.println("ArrayList, now: "+al);

        // Keep popping..
        int count = st.search("A");
       while (count != -1 && count >= 1) {
           System.out.println("Popping next.."+al.add(st.pop()));
           count--;
        }

        // Is the Stack empty?
        System.out.println("\nStack Empty? "+st.empty());
        System.out.println("ArrayList now: "+al);

プログラムを実行すると、使用al.add(st.pop()));すると「true」が返されます。ポップされる実際の要素(A、B、C)を生成する方法はありますか?

4

1 に答える 1

0

addのjavadocには次のように記載されています。

Returns:
true (as specified by Collection.add(E))

追加している要素を印刷したいようです。そう:

   String elem = st.pop();
   System.out.println("adding " +elem);
   al.add(elem)

ソフトウェア開発者になることを計画している場合、ドキュメントを読んで理解することは、練習する価値のあるスキルです。

于 2014-06-23T22:11:20.763 に答える