different implementation arraylist uses dynamic array and linkedlist uses doubly linkedlist
different storage ways: arraylist stores its elements in memory consecutively, but linkedlist don’t have to because of the pointers.
different interface it implemented. arraylist implement list interface and linkedlist implement list interface and deque interface.
different using scenarios: arraylist works better when we have large demand on access random data, linkedlist works better when the application demands manipulation of the stored data.