Answer: Vector is a synchronized data structure while Arraylist is not synchronized.
It means Vector is thread safe while ArrayList is not thread safe. When two or more threads try to access and modify ArrayList simultaneously, result might be un expected. While in the cae of Vector, it will allow only one thread to access and modify it at a time. Other threads will have to wait till the current thread release the lock on Vector.