Granny's Programming Pearls "inside of every large program is a small program struggling to get out" JavaRanch.com/granny.jsp
programming forums Java Java JSRs Mobile Certification Databases Caching Books Engineering OS Languages Paradigms IDEs Build Tools Frameworks Products This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
Sheriffs:
Saloon Keepers:
Bartenders:

# enhanced for loop problem -- from a mock

Js Kaur
Greenhorn
Posts: 2
I got this code from a mock .....

output is ::

1
2
3
4
arr[1] = 0
arr[0] = 0
arr[3] = 0
arr[0] = 0
After ....
0
0
3
0

Why in the second loop array index's are like 1,0,3, 0 shouldn't it be arr[0], arr[1], arr[2], arr[3]

Ankit Garg
Sheriff
Posts: 9610
37
When the loop runs the first time, ii contains 1 as arr[0] contains the value 1. The loop prints arr[1]=0 (as ii contains the value 1). Then you set arr[ii] to 0 i.e. arr[1] is set to 0.
Then when the loop run's 2nd time, ii contains the value of arr[1] which is 0. The loop prints arr[0]=0 (as ii contains the value 0). Then you set arr[ii] to 0 at this point ii is 0 so you set arr[0] to 0.
Then when the loop run's 3rd time, ii contains the value of arr[2] which is 3. The loop prints arr[3]=0 (as ii contains the value 3). Then you set arr[ii] to 0 at this point ii is 3 so you set arr[3] to 0.
Then when the loop run's 4th time, ii contains the value of arr[3] which is 0. The loop prints arr[0]=0 (as ii contains the value 0). Then you set arr[ii] to 0 at this point ii is 0 so you set arr[0] to 0...

ayush raj
Ranch Hand
Posts: 60
Good example for the fundamentals . Each time the for loop modifies the contents of the array and the iterator works accordingly !!

Henry Wong
author
Sheriff
Posts: 23284
125
Js Kaur wrote:I got this code from a mock .....

Please QuoteYourSources -- meaning which mock?

Henry