Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ความแตกต่างระหว่าง ArrayList และ Vector ใน Java


ทั้ง ArrayList และ Vector มีการใช้งานอินเทอร์เฟซรายการใน Java ทั้งสองคลาสเก็บลำดับการแทรก แต่ก็มีความแตกต่างบางอย่างเช่นกัน

ต่อไปนี้เป็นข้อแตกต่างที่สำคัญระหว่างวิธี ArrayList และ Vector

ซีเนียร์ เลขที่
Key
ArrayList
เวกเตอร์
1
การซิงโครไนซ์
ArrayList ไม่ได้รับการซิงโครไนซ์
เวกเตอร์ถูกซิงโครไนซ์
2
ขนาด
ArrayList เพิ่มขึ้น 50% ของขนาดปัจจุบันหากองค์ประกอบที่เพิ่มเกินความจุ
เวกเตอร์เพิ่มขึ้น 100% ของขนาดปัจจุบันหากองค์ประกอบที่เพิ่มเกินความจุ
3
ดั้งเดิม
ArrayList ไม่ใช่มรดก
เวกเตอร์เป็นคลาสดั้งเดิม
4
ความเร็ว
ArrayList เร็วกว่าเมื่อไม่ซิงโครไนซ์
LinkedList ถูกซิงโครไนซ์ช้ากว่า
5
การวนซ้ำ
ArrayList ใช้อินเทอร์เฟซตัววนซ้ำเพื่อสำรวจผ่านองค์ประกอบต่างๆ
เวกเตอร์สามารถใช้ทั้งอินเทอร์เฟซตัววนซ้ำหรือตัวแจงนับเพื่อสำรวจผ่านองค์ประกอบต่างๆ

ตัวอย่าง ArrayList กับ Vector

JavaTester.java

import java.util.ArrayList;
import java.util.Vector;
import java.util.List;
public class JavaTester {
   public static void main(String args[]) {
      List<String> list = new ArrayList<>();
      list.add("A");
      list.add("B");
      list.add("C");
      list.add("D");
      List<String> list1 = new Vector<>();
      list1.add("A");
      list1.add("B");
      list1.add("C");
      list1.add("D");
      System.out.println(list);
      System.out.println(list1);
   }
}

ผลลัพธ์

[A, B, C, D]
[A, B, C, D]