Vector is a legacy class which has been added to collections and ArrayList is a collections. The main difference is Vector class is synchronized and Arraylist isnt. However u can get a synchronized version of ArrayList using the static functions in Collections.
Here's my Collections Crib Sheet drastially reduced from a Sun Tech Tip newsletter. I keep it handy rather than memorize 10 classes implementing 3 interfaces. It gives some brief tips about how to choose one collection type over another.
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi