Difference in Lists?

java.awt.list and java.util.list

which to use and why?

http://download.oracle.com/javase/7/docs/api/java/awt/List.html
http://download.oracle.com/javase/7/docs/api/java/util/List.html

Although I think I can understand the differences, I am not entirely sure.

Also sometimes I see List used with new ArrayList? I typically always did ArrayList with new ArrayList

Is there a benefit of putting an ArrayList into a List vs an ArrayList?

awt is a gui element, a visual component (which also holds data)
the util one is for real data structures - has nothing to do with gui

Thanks so much! I was a little confused and this clarified it super easy!

List is the interface specified by the Collections API. ArrayList on the other hand is an implementation of this interface with special attributes (like fast random element access). LinkedList is another one (which can be faster for add and remove operations).

You usually pass around List objects to abstract away the implementation class, so you can replace the used implementation easily at a later point in time if another implementation seems to fit your use case better.

Most of the time this is however only needed when designing APIs, so passing around ArrayLists doesn’t really hurt.