Java groovy-如何处理多个点编号?

Java groovy-如何处理多个点编号?,java,groovy,Java,Groovy,使用groovy脚本,该脚本将通过增加上一版本来计算当前产品发布版本。 但是这个版本有多个点,比如1.2.0,需要用另一个多点数字(比如0.1.0)来增加它,如何在groovy中实现,因为似乎没有这样的数据类型。我可能会这样做。这有用吗 class Version { static final int INCREMENT_UNIT = 1; int major, minor, point; Version(String version) { String parts[] =

使用groovy脚本,该脚本将通过增加上一版本来计算当前产品发布版本。

但是这个版本有多个点,比如1.2.0,需要用另一个多点数字(比如0.1.0)来增加它,如何在groovy中实现,因为似乎没有这样的数据类型。

我可能会这样做。这有用吗

class Version {  

static final int INCREMENT_UNIT = 1;

int major, minor, point;  

Version(String version) {
    String parts[] = version.split(".");

    this.major = Integer.parseInt(parts[0]);
    this.minor = Integer.parseInt(parts[1]);
    this.point = Integer.parseInt(parts[2]);
 }

 Version incrementMajor(int unit) {
    this.major += unit; 

    return this;
 }

 Version incrementMinor(int unit) {
    this.minor += unit; 

    return this;
 }

 Version incrementPoint(int unit) {
    this.point += unit;

    return this; 
 }

String toString() {
    return major + "." + minor + "." + point;
}

}

用例?您尝试过什么?用例是通过从git repo获取最后一个发布版本(标签),从CI计算产品的下一个发布版本。发布版本类似于3位数的1.2.0,我已经尝试过类似的方法,但我正在寻找是否有一种通用的方法来做到这一点,
def last_ver=“1.2.0”def new_ver=(((my_ver.tokenize(“.”[0]+“+my_ver.tokenize(.”[1])。toFloat()+“0.1”)。toFloat()。round(2))+“+”0”
为什么不将多点编号(字符串)拆分为多个数字(按点拆分),然后对其执行其他操作,并将其作为字符串连接,再次转换为多点编号?@adn.911这就是我正在做的事情,请参见上述注释。但我在检查是否有其他方法非常简单和通用