https://medium.com/@travelswithkrishna/java-collections-framework-day-11-navigating-through-java-collections-30fc9be6058f