allows iterating an array of elements with an easy-to-read syntax and gives functionality to the collection and the elements it iterates.