According to http://docs.oracle.com/javase/tutorial/collections/interfaces/index.html there are two top level interfaces called collection and map.
Whats the exact reason for separating these two ?
Is it that all key value data structures implement the map interface and all others implement the collections interface ?
Yes, That’s correct! Check all the
Listclasses and then check all theMaprelated classes.and there is this awesome discussion, ob this question
List vs Map in Java
Visually
This is a collection, by this you know that the books are there and it’s in order like 0,1,2,3…
But in a Map, the books are in memory unordered but for the computer’s convenience it has a key to find the books, like in a library.