在Java API中,
Vector是AbstractList的子类,Stack是Vector的子类。 Java 集合框架是在 Java 2 中引入的。早期支持多种数据结构,其中包括 Vector 和 Stack 类。这些类经过重新设计以适应 Java 集合框架,但保留了它们所有旧式方法
兼容性。
Vector 与 ArrayList 相同,只是它包含用于访问和修改向量的同步方法。当两个或多个线程同时访问和修改向量时,同步方法可以防止数据损坏。对于许多不需要同步的应用程序,使用 ArrayList 比使用 Vector.
更高效Vector 类扩展了 AbstractList 类。它还具有 Java 2 之前定义的原始 Vector 类中包含的方法,如下图所示。
上图中UML图中列出的Vector类中的大多数方法与List接口中的方法类似。这些方法是在 Java 集合框架之前引入的。例如,addElement(Object element) 与 add(Object element) 方法相同,只不过 addElement 方法是同步的。如果不需要同步,请使用 ArrayList 类。它的工作速度比 Vector.
快得多elements() 方法返回一个 Enumeration。 Enumeration 接口在 Java 2 之前引入,并被 Iterator 接口取代。 Vector 广泛用于 Java 遗留代码中,因为它是 Java 2 之前的 Java 可调整大小的数组实现。
在Java集合框架中,Stack是作为Vector的扩展实现的,如下图所示。
Stack类是在Java 2之前引入的。上图所示的方法是在Java 2之前使用的。empty()方法与isEmpty相同()。 peek() 方法查看堆栈顶部的元素而不删除它。 pop() 方法从堆栈中删除顶部元素并返回它。 push(Object element)方法将指定元素添加到堆栈中。 search(Object element)方法检查指定元素是否在堆栈中。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3