### Question:
Longs { public static long lowestOneBit(long lng) { return (lng & (-lng)); }  static long decode(String string); static long parseLong(String string); static long parseLong(String string, int radix); static String toBinaryString(long l); static String toHexString(long l); static String toString(long l); static long highestOneBit(long lng); static long lowestOneBit(long lng); static int numberOfLeadingZeros(long lng); static int numberOfTrailingZeros(long lng); static int bitCount(long lng); static long rotateLeft(long lng, int distance); static long rotateRight(long lng, int distance); static long reverseBytes(long lng); static long reverse(long lng); static final long MAX_VALUE; static final long MIN_VALUE; }### Answer:
@Test public void test_lowestOneBitJ() { assertEquals(0x10, Longs.lowestOneBit(0xF0)); assertEquals(0x10, Longs.lowestOneBit(0x90)); assertEquals(0x10, Longs.lowestOneBit(0xD0)); assertEquals(0x10, Longs.lowestOneBit(0x123490)); assertEquals(0x10, Longs.lowestOneBit(0x1234D0)); assertEquals(0x100000, Longs.lowestOneBit(0x900000)); assertEquals(0x100000, Longs.lowestOneBit(0xD00000)); assertEquals(0x40, Longs.lowestOneBit(0x40)); assertEquals(0x40, Longs.lowestOneBit(0xC0)); assertEquals(0x4000, Longs.lowestOneBit(0x4000)); assertEquals(0x4000, Longs.lowestOneBit(0xC000)); assertEquals(0x4000, Longs.lowestOneBit(0x99994000)); assertEquals(0x4000, Longs.lowestOneBit(0x9999C000)); assertEquals(0, Longs.lowestOneBit(0)); assertEquals(1, Longs.lowestOneBit(1)); assertEquals(1, Longs.lowestOneBit(-1)); }