### Question:
Longs { public static long rotateRight(long lng, int distance) { if (distance == 0) { return lng; } return ((lng >>> distance) | (lng << (-distance))); }  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_rotateRightJI() { assertEquals(0xF, Longs.rotateRight(0xF0, 4)); assertEquals(0xF, Longs.rotateRight(0xF00, 8)); assertEquals(0xF, Longs.rotateRight(0xF000, 12)); assertEquals(0xF, Longs.rotateRight(0xF0000, 16)); assertEquals(0xF, Longs.rotateRight(0xF00000, 20)); assertEquals(0xF, Longs.rotateRight(0xF000000, 24)); assertEquals(0xF, Longs.rotateRight(0xF0000000L, 28)); assertEquals(0xF000000000000000L, Longs.rotateRight(0xF000000000000000L, 64)); assertEquals(0xF000000000000000L, Longs.rotateRight(0xF000000000000000L, 0)); }