Arrays are collections of related data items of the same data type. An array stores elements of the same data type in contiguous memory locations that are accessed using an index. The index is used to access individual elements, with the first element having an index of 0. Arrays can be initialized by assigning values to each element or by prompting for input during runtime using a for loop. Operations on arrays include insertion, deletion, and searching of elements. Searching can be done using linear search, which sequentially compares each element to the search key, or binary search, which divides the array in half and recursively searches within the narrowed range.