Think of it like this:
(int[]) k, i
int (k[]), (i)
In the first example, the brackets are associated with the int keyword, specifying that you want to create int arrays. In the second, you specify type int, then declare an array of ints k, and an int i.