the answers say if i remove
int[] b2 = (int[]) o1;
then code will compile fine and prints output as 4............but how..........i am not able to understand.........
how line 01 works.................
in a simple way 1st not zeroth element of array a has been assigned which is "{3,4}".
and 4 will be printed because first not the "zeroth" element of array has been forced to print.