📅  最后修改于: 2023-12-03 15:31:55.484000             🧑  作者: Mango
java.util.Stack
类是Java集合框架中的一种数据结构,它是一种后进先出(LIFO)的数据结构,与Queue类正好相反。Stack类并未被归入Java集合框架的主体,在Java SE 8中标记为过时,但仍然可以继续使用。
Stack类提供了capacity()方法,它可以用来获取当前Stack的容量大小。Stack的容量是Stack如果没有调整大小(resize)可以容纳的元素数量。Stack的capacity()方法是Stack类定义的方法之一,语法如下:
public int capacity()
capacity()方法没有参数,返回一个整型数据,代表当前Stack的容量大小。
下面是一个使用Stack类capacity()方法的示例代码:
import java.util.Stack;
public class StackCapacityExample {
public static void main(String[] args) {
Stack<Integer> stack = new Stack<>();
System.out.println("Current Stack Capacity: " + stack.capacity());
stack.push(1);
stack.push(2);
stack.push(3);
System.out.println("Current Stack Capacity: " + stack.capacity());
for (int i = 4; i <= 10; i++) {
stack.push(i);
}
System.out.println("Current Stack Capacity: " + stack.capacity());
}
}
上述代码的输出结果如下:
Current Stack Capacity: 10
Current Stack Capacity: 10
Current Stack Capacity: 20
从输出结果可以看出,初始化Stack对象时,其容量大小为10。当向Stack中添加元素时,其容量并不会随之变化,直到Stack的容量不够用时,Stack类内部会自动调整大小(resize),将其容量扩大到原来的两倍。在上述代码示例中,当向Stack中添加第11个元素时,其容量大小由10调整为20。
通过本文的介绍,我们了解了Java中Stack类的capacity()方法,以及如何使用它获取当前Stack的容量大小。需要注意的是,在使用Stack类时,其容量并不是无限大的,如果Stack的容量不足,Stack内部将自动调整大小。对于Stack类的具体使用,还需要结合实际应用场景进行深入理解和学习。