public static void main(String[] args) {
System.out.println(versionCompare("1.0.1","1.0.1.1"));
System.out.println(versionCompare("1.0.1","1.0.1.0"));
System.out.println(versionCompare("1.0.1","1.0.2"));
System.out.println(versionCompare("1.0.3","1.0.2"));
}
/**
* ver1 > ver2 = 1
* ver1 = ver2 = 0
* ver1 < ver2 = -1
* @param ver1
* @param ver2
* @return
*/
public static int versionCompare(String ver1, String ver2){
if(ver1.equals(ver2)){
return 0;
}
String[] verArr1 = ver1.split("\\.");
String[] verArr2 = ver2.split("\\.");
int maxflag = 1;
int minLen = 0;
if(verArr1.length > verArr2.length){
minLen = verArr2.length;
}else{
minLen = verArr1.length;
maxflag = 2;
}
for(int i = 0; i < minLen; i++){
if(Integer.valueOf(verArr1[i]) - Integer.valueOf(verArr2[i]) > 0){
return 1;
}else if(Integer.valueOf(verArr1[i]) - Integer.valueOf(verArr2[i]) < 0){
return -1;
}
}
if(maxflag == 1){
for (int j = minLen; j < verArr1.length; j++) {
if(Integer.valueOf(verArr1[j]).intValue() > 0){
return 1;
}
}
}else{
for (int k = minLen; k < verArr2.length; k++) {
if(Integer.valueOf(verArr2[k]).intValue() > 0){
return -1;
}
}
}
return 0;
}
java 多个小数点比较大小
最新推荐文章于 2024-07-07 03:06:46 发布