Difference between ArrayList and Vector
ArrayList and Vector both implements List interface and maintains insertion order.
But there are many differences between ArrayList and Vector classes that are given below.
|1) ArrayList is not synchronized.||Vector is synchronized.|
|2) ArrayList increments 50% of current array size if number of element exceeds from its capacity.||Vector increments 100% means doubles the array size if total number of element exceeds than its capacity.|
|3) ArrayList is not a legacy class, it is introduced in JDK 1.2.||Vector is a legacy class.|
|4) ArrayList is fast because it is non-synchronized.||Vector is slow because it is synchronized i.e. in multithreading environment, it will hold the other threads in runnable or non-runnable state until current thread releases the lock of object.|
|5) ArrayList uses Iterator interface to traverse the elements.||Vector uses Enumeration interface to traverse the elements. But it can use Iterator also.|
Example of Java ArrayList
Let's see a simple example where we are using ArrayList to store and traverse the elements.
Test it Now
Example of Java Vector
Let's see a simple example of java Vector class that uses Enumeration interface.
Test it Now