java.util.Stack.addAll()方法用于在指定位置插入指定集合的所有元素在堆栈中。该方法将指定位置的当前元素(如果有)和任何后续元素向上移动(增加它们的索引)。新元素将按照指定集合的迭代器返回的顺序出现在堆栈中。
语法
public boolean addAll(int index, Collection<? extends E> c)
这里,E 是容器维护的元素类型。
参数
index | 指定需要插入集合第一个元素的索引号 |
c | 指定包含需要添加到堆栈中的所有元素的集合。 |
返回值
如果堆栈因调用而更改,则返回 true,否则返回 false。
异常
如果索引超出范围,则抛出IndexOutOfBoundsException。
如果指定的集合为空,则抛出NullPointerException。
示例:
在下面的示例中,使用 java.util.Stack.addAll() 方法插入所有元素堆栈MyStack中指定位置处的堆栈stk。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建堆栈
Stack<Integer> MyStack = new Stack<Integer>();
Stack<Integer> stk = new Stack<Integer>();
//填充 MyStack
MyStack.push(10);
MyStack.push(20);
MyStack.push(30);
//填充stk
stk.push(100);
stk.push(200);
//打印堆栈
System.out.println("Before method call, MyStack contains: " + MyStack);
MyStack.addAll(1, stk);
//打印堆栈
System.out.println("After method call, MyStack contains: " + MyStack);
}
}
上述代码的输出将是:
Before method call, MyStack contains: [10, 20, 30]
After method call, MyStack contains: [10, 100, 200, 20, 30]