Collections hold stuff. They're used whenever you need to hold stuff. They're implemented because people sometimes want their program to hold stuff.