当最后一个进入 Main-Vector 时,如何打印 Vector 的对象?

How can I print an Object of a Vector when this last is into a Main-Vector?

如何将 Vector 打印到 Vector (main) 中。 我制作了一个包含堆栈向量 (java.util) 的程序,在包中我有两个 classes: -堆栈,-mainProgram; Stack class 将使用以下方法通过 Vector (java.util) 创建对象:pop、push、peek、isEmpty、search、print。我做了一切,但我不知道如何打印 Vector (main) 中包含的堆栈及其元素,我应该能够在其中添加、删除、搜索和打印堆栈。

我的意思的例子:

我要打印的栈应该是这样的 -->


堆栈 1:
10
20
30
40
50
60
堆栈 2:
1
2
3
4
5

堆栈 3:
100
110
120
130

你有什么建议吗?

您不应该再使用 Vector,因为它在 class 年前就已经成为传统。

如果你需要用Collections框架的数据结构来实现Stack,那么ArrayDeque是你最好的选择。

This class is likely to be faster than Stack when used as a stack

但是,如果使用 Vector 是一种约束,您可以简单地使用两个嵌套的 for 来打印您的元素。我假设您最里面的 Vector 包含字符串。

public void print(Vector<Vector<String>> vet){
        int i = 0;
        for (Vector<String> v : vet) {
            System.out.printf("Stack %d:%n", ++i);
            for (String s : v) {
                System.out.println(s);
            }
            System.out.println();
        }
}

ArrayDeque 的实现完全相同

public void print(ArrayDeque<ArrayDeque<String>> vet){
        int i = 0;
        for (ArrayDeque<String> v : vet) {
            System.out.printf("Stack %d:%n", ++i);
            for (String s : v) {
                System.out.println(s);
            }
            System.out.println();
        }
}