As for the "intuition" part, maybe this question helps it make sense:
Where would those values be held until they can be passed into the array constructor, other than in yet another array? So why create one array just to create another instead of creating the final array immediately?