difference between for and for each loop in java