src/share/classes/java/util/UUID.java
Print this page
@@ -371,21 +371,15 @@
* }</pre></blockquote>
*
* @return A string representation of this {@code UUID}
*/
public String toString() {
- return (digits(mostSigBits >> 32, 8) + "-" +
- digits(mostSigBits >> 16, 4) + "-" +
- digits(mostSigBits, 4) + "-" +
- digits(leastSigBits >> 48, 4) + "-" +
- digits(leastSigBits, 12));
- }
-
- /** Returns val represented by the specified number of hex digits. */
- private static String digits(long val, int digits) {
- long hi = 1L << (digits * 4);
- return Long.toHexString(hi | (val & (hi - 1))).substring(1);
+ return Long.toHexString((mostSigBits >>> 32) & 0xFFFFFFFFL, 8) + '-'
+ + Long.toHexString((mostSigBits >>> 16) & 0xFFFFL, 4) + '-'
+ + Long.toHexString( mostSigBits & 0xFFFFL, 4) + '-'
+ + Long.toHexString((leastSigBits >>> 48) & 0xFFFFL, 4) + '-'
+ + Long.toHexString( leastSigBits & 0xFFFFFFFFFFFFL, 12);
}
/**
* Returns a hash code for this {@code UUID}.
*