Android
java.util
public final class

java.util.UUID

java.lang.Object
java.util.UUID Serializable Comparable<T>

UUID is an immutable representation of a 128-bit universally unique identifier (UUID).

There are multiple, variant layouts of UUIDs, but this class is based upon variant 2 of RFC 4122, the Leach-Salz variant. This class can be used to model alternate variants, but most of the methods will be unsupported in those cases; see each method for details.

Summary

Public Constructors

            UUID(long mostSigBits, long leastSigBits)

Constructs an instance with the specified bits.

Public Methods

          int  clockSequence()

The clock sequence value of the version 1, variant 2 UUID as per RFC 4122.

          int  compareTo(UUID uuid)

Compares this UUID to the specified UUID.

          boolean  equals(Object object)

Compares this UUID to another object for equality.

      static    UUID  fromString(String uuid)

Parses a UUID string with the format defined by toString().

          long  getLeastSignificantBits()

The 64 least significant bits of the UUID.

          long  getMostSignificantBits()

The 64 most significant bits of the UUID.

          int  hashCode()

Returns a hash value for this UUID that is consistent with the equals(Object) method.

      static    UUID  nameUUIDFromBytes(byte[] name)

Generates a variant 2, version 3 (name-based, MD5-hashed) UUID as per RFC 4122.

          long  node()

The node value of the version 1, variant 2 UUID as per RFC 4122.

      static    UUID  randomUUID()

Generates a variant 2, version 4 (randomly generated number) UUID as per RFC 4122.

          long  timestamp()

The timestamp value of the version 1, variant 2 UUID as per RFC 4122.

          String  toString()

Returns a string representation of this UUID in the following format, as per RFC 4122.

          int  variant()

The variant of the UUID as per RFC 4122.

          int  version()

The version of the variant 2 UUID as per RFC 4122.

Methods inherited from class java.lang.Object
Methods inherited from interface java.lang.Comparable

Details

Public Constructors

public UUID(long mostSigBits, long leastSigBits)

Constructs an instance with the specified bits.

Parameters

mostSigBits The 64 most significant bits of the UUID.
leastSigBits The 64 least significant bits of the UUID.

Public Methods

public int clockSequence()

The clock sequence value of the version 1, variant 2 UUID as per RFC 4122.

Returns

  • A long value.

public int compareTo(UUID uuid)

Compares this UUID to the specified UUID. The natural ordering of UUIDs is based upon the value of the bits from most significant to least significant.

Parameters

uuid The UUID to compare to.

Returns

  • A value of -1, 0 or 1 if this UUID is less than, equal to or greater than uuid.

public boolean equals(Object object)

Compares this UUID to another object for equality. If object is not null, a UUID instance and all bits are equals, then true is returned.

Parameters

object The Object to compare to.

Returns

  • A true if this UUID is equal to object or false if not.

public static UUID fromString(String uuid)

Parses a UUID string with the format defined by toString().

Parameters

uuid The UUID string to parse.

Returns

  • A UUID instance.

Throws

NullPointerException if uuid is null.
IllegalArgumentException if uuid is not formatted correctly.

public long getLeastSignificantBits()

The 64 least significant bits of the UUID.

Returns

  • A long value.

public long getMostSignificantBits()

The 64 most significant bits of the UUID.

Returns

  • A long value.

public int hashCode()

Returns a hash value for this UUID that is consistent with the equals(Object) method.

Returns

  • An int value.

public static UUID nameUUIDFromBytes(byte[] name)

Generates a variant 2, version 3 (name-based, MD5-hashed) UUID as per RFC 4122.

Returns

  • A UUID instance.

public long node()

The node value of the version 1, variant 2 UUID as per RFC 4122.

Returns

  • A long value.

public static UUID randomUUID()

Generates a variant 2, version 4 (randomly generated number) UUID as per RFC 4122.

Returns

  • A UUID instance.

public long timestamp()

The timestamp value of the version 1, variant 2 UUID as per RFC 4122.

Returns

  • A long value.

public String toString()

Returns a string representation of this UUID in the following format, as per RFC 4122.

            UUID                   = time-low "-" time-mid "-"
                                     time-high-and-version "-"
                                     clock-seq-and-reserved
                                     clock-seq-low "-" node
            time-low               = 4hexOctet
            time-mid               = 2hexOctet
            time-high-and-version  = 2hexOctet
            clock-seq-and-reserved = hexOctet
            clock-seq-low          = hexOctet
            node                   = 6hexOctet
            hexOctet               = hexDigit hexDigit
            hexDigit =
                "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" /
                "a" / "b" / "c" / "d" / "e" / "f" /
                "A" / "B" / "C" / "D" / "E" / "F"
 

Returns

  • A String instance.

public int variant()

The variant of the UUID as per RFC 4122.

  • 0 - Reserved for NCS compatibility
  • 2 - RFC 4122/Leach-Salz
  • 6 - Reserved for Microsoft Corporation compatibility
  • 7 - Reserved for future use

Returns

  • An int value.

public int version()

The version of the variant 2 UUID as per RFC 4122. If the variant is not 2, then the version will be 0.

  • 1 - Time-based UUID
  • 2 - DCE Security UUID
  • 3 - Name-based with MD5 hashing UUID (nameUUIDFromBytes(byte[]))
  • 4 - Randomly generated UUID (randomUUID())
  • 5 - Name-based with SHA-1 hashing UUID

Returns

  • An int value.
Copyright 2007 Google Inc. Build 0.9_r1-98467 - 14 Aug 2008 18:56