java.lang.Object
java.lang.module.ModuleDescriptor.Version
- 所有已实现的接口:
Comparable<ModuleDescriptor.Version>
- 封闭类:
ModuleDescriptor
public static final class ModuleDescriptor.Version extends Object implements Comparable <ModuleDescriptor.Version >
模块的版本字符串。
版本字符串包含三个部分:版本号本身、可选的预发布版本和可选的构建版本。每个组件都是一系列标记;每个标记要么是一个非负整数,要么是一个字符串。标记由标点字符 '.' 、 '-' 或 '+' 分隔,或者通过从数字序列到既不是数字也不是标点字符的字符序列的转换,反之亦然。连续重复的标点字符被视为单个标点字符。
- 这版本号是由
'.'个字符分隔的标记序列,由第一个'-'或'+'个字符终止。 - 这预发布版本是由
'.'或'-'字符分隔的标记序列,由第一个'+'字符终止。 - 这构建版本是由
'.'、'-'或'+'字符分隔的一系列标记。
当比较两个版本字符串时,它们对应组件的元素以逐点方式进行比较。如果一个组件比另一个长,但在其他方面等于它,则第一个组件被认为是两者中较大的一个;否则,如果两个对应的元素是整数,那么它们就这样进行比较;否则,至少有一个元素是字符串,所以如果另一个是整数,则将另一个转换为字符串,并按字典顺序比较两者。值为零的尾随整数元素将被忽略。
给定两个版本字符串,如果它们的版本号不同则比较它们的结果就是比较它们的版本号的结果;否则,如果其中一个有预发布版本而另一个没有,则认为第一个在第二个之前,否则比较它们的结果就是比较它们的预发布版本的结果;否则,比较它们的结果就是比较它们的构建版本的结果。
- 自从:
- 9
- 参见:
-
方法总结
修饰符和类型方法描述int将此模块版本与另一个模块版本进行比较。boolean测试此模块版本是否与给定对象相等。inthashCode()计算此模块版本的哈希码。static ModuleDescriptor.Version将给定的字符串解析为版本字符串。toString()返回从中解析此版本的字符串。
-
方法详情
-
parse
将给定的字符串解析为版本字符串。- 参数:
v- 要解析的字符串- 返回:
-
结果
Version - 抛出:
IllegalArgumentException- 如果v是null,一个空字符串,或者不能被解析为版本字符串
-
compareTo
将此模块版本与另一个模块版本进行比较。模块版本按照类描述中的描述进行比较。- 指定者:
compareTo在接口Comparable<ModuleDescriptor.Version>中- 参数:
that- 要比较的模块版本- 返回:
- 负整数、零或正整数,因为此模块版本小于、等于或大于给定模块版本
-
equals
测试此模块版本是否与给定对象相等。如果给定对象不是
Version,则此方法返回false。如果对应的组件相同,则两个模块版本相同。此方法满足
Object.equals方法的一般契约。 -
hashCode
public int hashCode()计算此模块版本的哈希码。哈希码基于版本的组件并满足
Object.hashCode方法的一般合同。 -
toString
返回从中解析此版本的字符串。
-