Class BroId

java.lang.Object
icu.congee.id.generator.broid.BroId
All Implemented Interfaces:
Comparable<BroId>
Direct Known Subclasses:
UUIDv8BroId

public class BroId extends Object implements Comparable<BroId>
  • Constructor Details

    • BroId

      public BroId()
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toBase62String

      public String toBase62String()
      将BroId转换为Base62编码的字符串表示形式。 Base62编码使用数字(0-9)、小写字母(a-z)和大写字母(A-Z)共62个字符来表示二进制数据。
      Returns:
      Base62编码的字符串
    • toBase36String

      public String toBase36String()
      将BroId转换为Base36编码的字符串表示形式。 Base36编码使用数字(0-9)和小写字母(a-z)共36个字符来表示二进制数据。
      Returns:
      Base36编码的字符串
    • toCrockfordBase32String

      public String toCrockfordBase32String()
      将BroId转换为Crockford Base32编码的字符串表示形式。 Crockford Base32是一种人类可读的编码方案,设计用于减少视觉混淆。
      Returns:
      Crockford Base32编码的字符串
    • toHexString

      public String toHexString()
      将BroId转换为十六进制字符串表示形式。
      Returns:
      十六进制编码的字符串
    • toLong

      public Long toLong()
      将BroId转换为长整型数值。 注意:此方法可能会因为BroId的位数超过64位而导致数据丢失。
      Returns:
      BroId的长整型表示
    • toUUID

      public UUID toUUID()
      将BroId转换为标准的UUID。 转换过程会将前64位作为UUID的最高有效位(MSB),后64位作为最低有效位(LSB)。
      Returns:
      UUID实例
    • toUUID

      public UUID toUUID(IdType idType)
      将BroId转换为指定类型的UUID。 目前仅支持转换为UUIDv8类型,会根据RFC规范设置相应的版本和变体位。
      Parameters:
      idType - UUID的目标类型
      Returns:
      指定类型的UUID实例,如果不支持指定的类型则返回null
    • compareTo

      public int compareTo(BroId other)
      比较两个BroId实例,基于它们的value值 如果value列表长度不同,则较短的列表被视为较小 如果value列表长度相同,则通过逐位比较位列表中的布尔值
      Specified by:
      compareTo in interface Comparable<BroId>
      Parameters:
      other - 要比较的另一个BroId实例
      Returns:
      负数、零或正数,分别表示此BroId小于、等于或大于指定的BroId
    • getComparator

      public static Comparator<BroId> getComparator()
      返回一个比较器,用于比较两个BroId实例
      Returns:
      用于比较BroId实例的比较器
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object