hi,
even i am preparing for scjp1.5. if anyone finds there is anything wrong with my answer then please suggest me. i am thinking this is the way the left shift operator works.
first convert the decimal into binary form.
as its an int, it looks like
decimal 37=0000 0000 0000 0000 0000 0000 0010 0101(binary int form)
now start shifting each bit one by one from their original position to 50th position.since the size of an int is 32bit,after reaching the rightmost bit the count starts again from leftmost position.i,e the number at 50th position will appear at 18th position(32+18=50).so 37<<50 gives 9699328.