| An array is of fixed length | ArrayList is of variable length |
| Length of the array cannot be changed once created | Length of the array can be changed after creation |
| It can STORE both primitive types and objects | It can store only objects, not primitives(it automatically converts primitive TYPE to object) |
| USING an assignment operator we can store ELEMENTS into an array | With the help of add() method elements are stored into an ArrayList |
| An array can be multi-dimensional | ArrayList is always one-dimensional |