Arrays allow storing multiple values of the same type in contiguous memory locations. They are declared with the data type, name, and number of elements. Each element can then be accessed via its index number. Arrays must be initialized before use, which can be done by assigning values within curly brackets when declaring the array. Values in arrays can then be accessed and modified using indexing syntax like name[index].