Bug fix in Chapter 5 Sample Code method clearBitsIthrough0

The previous version doesn't work when i = 31 because the innermost part of the mask will be (1 << 32), which evaluates to 1 in Java. So the mask will end up being ~0, which will not clear any of the bits.