In general (and in Java) an array is a data structure generally consisting of sequential memory storing a collection of objects.
List is an interface in Java, which means that it may have multiple implementations. One of these implementations is
ArrayList, which is a class that implements the behavior of the
List interface using arrays as the data structure.
There are a number of other classes that implement the
List interface. One easy way to take a look at them is by viewing the Javadoc for
On that page, you’ll see “all known implementing classes,” which are all of the kinds of lists in Java.