- java.lang.Object
-
- java.lang.module.ModuleDescriptor.Version
-
- 实现的所有接口
-
Comparable<ModuleDescriptor.Version>
- Enclosing class:
- ModuleDescriptor
public static final class ModuleDescriptor.Version extends Object implements Comparable<ModuleDescriptor.Version>
模块的版本字符串。版本字符串有三个组件:版本号本身,可选的预发行版本和可选的构建版本。 每个组件都是一系列令牌; 每个标记都是非负整数或字符串。 令牌由标点符号字符分隔
'.'
,'-'
,或'+'
,或者通过转换从数字序列到既不是数字也不标点符号,或反之亦然的字符序列。- 版本号是由
'.'
字符分隔的标记序列,由第一个'-'
或'+'
字符终止。 - 预发行版本是由
'.'
或'-'
字符分隔的标记序列,由第一个'+'
字符终止。 - 生成版本是由分隔的标记的序列
'.'
,'-'
,或'+'
字符。
当比较两个版本字符串时,它们相应组件的元素以逐点方式进行比较。 如果一个组件比另一个组件长,但在其他方面等于它,那么第一个组件被认为是两个组件中的较大者; 否则,如果两个相应的元素是整数,则将它们进行比较; 否则,至少有一个元素是一个字符串,所以如果它是一个整数,则另一个元素被转换成字符串,并且这两个元素按字典顺序进行比较。 将忽略值为零的尾随整数元素。
给定两个版本字符串,如果它们的版本号不同,则比较它们的结果是比较它们的版本号的结果; 否则,如果其中一个版本具有预发布版本但另一个版本没有,那么第一个版本被认为是在第二个版本之前,否则比较它们的结果是比较它们的预发行版本的结果; 否则,比较它们的结果是比较它们的构建版本的结果。
- 从以下版本开始:
- 9
- 另请参见:
-
ModuleDescriptor.version()
-
-
方法详细信息
-
parse
public static ModuleDescriptor.Version parse(String v)
将给定字符串解析为版本字符串。- 参数
-
v
- 要解析的字符串 - 结果
-
由此产生的
Version
- 异常
-
IllegalArgumentException
- 如果v
是null
,为空字符串,或者无法解析为版本字符串
-
compareTo
public int compareTo(ModuleDescriptor.Version that)
将此模块版本与另一个模块版本进行比较。 模块版本按类描述中的描述进行比较。- Specified by:
-
compareTo
在接口Comparable<ModuleDescriptor.Version>
- 参数
-
that
- 要比较的模块版本 - 结果
- 此模块版本小于,等于或大于给定模块版本的负整数,零或正整数
-
equals
public boolean equals(Object ob)
- 重写:
-
equals
在类Object
- 参数
-
ob
- 要与此对象进行比较的对象 - 结果
-
true
if且仅当给定对象是等于此模块引用的模块引用时 - 另请参见:
-
Object.hashCode()
,HashMap
-
hashCode
public int hashCode()
计算此模块版本的哈希码。哈希码基于版本的组件并满足
Object.hashCode
方法的常规协定。- 重写:
-
hashCode
在Object
类中 - 结果
- 此模块版本的哈希码值
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
-