Stack中存储了多少个元素?
答
如果您要约java.util.Stack
,那么限制为Integer.MAX_VALUE
约为20亿。但是,如果让它自然增长,那么如果添加超过13亿(10 * 2^28),则会发生异常,因为它会尝试将底层阵列增长到大于允许的大小。
恕我直言堆栈是一个遗留类在Java 1.2(1998)取代我不建议你使用它。
感谢您的信息。我是CS学生;由于课程的方向,我不能避免它们。出于好奇,什么取代了堆栈? – somehume 2011-04-19 11:59:42
AFAIK,'java.util.ArrayList',它是一个包装数组并实现标准接口(如List)的非同步版本。早期的集合不是为实现接口而设计的,这就是为什么它们有多个方法来实现兼容性。 – 2011-04-19 12:11:53
@DJClayworth,ArrayList有'add()'和'remove(size() - 1)',它们做同样的事情。 – 2011-04-19 19:49:08