新版本比较算法

Posted qtlq

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新版本比较算法相关的知识,希望对你有一定的参考价值。

之前写的不能比较类似于1.2和1.2这类版本
现在可以支持这种两位的版本,以及支持版本长度不一致的版本,如1.2.3和1.2
private boolean underFilterVersionV2(String version,String triggerVersion)
String[] versionArr = version.split("\\.");
String[] triggerVersionArr = triggerVersion.split("\\.");
for (int i = 0; i < version.length(); )
if (Integer.parseInt(versionArr[i]) > Integer.parseInt(triggerVersionArr[i]))
return true;
else if (Integer.parseInt(versionArr[i]) < Integer.parseInt(triggerVersionArr[i]))
break;
else
i++;
if (Integer.parseInt(versionArr[i]) > Integer.parseInt(triggerVersionArr[i]))
return true;
else if (Integer.parseInt(versionArr[i]) < Integer.parseInt(triggerVersionArr[i]))
return false;
else
i++;
if (i>=versionArr.length || i>=triggerVersionArr.length)
return true;

if (Integer.parseInt(versionArr[i]) >= Integer.parseInt(triggerVersionArr[i]))
return true;
else if (Integer.parseInt(versionArr[i]) < Integer.parseInt(triggerVersionArr[i]))
return false;




return false;

以上是关于新版本比较算法的主要内容,如果未能解决你的问题,请参考以下文章

比较两个版本号新版本

DataExa-Sati V5.7.0新版本发布!功能算法迭代架构性能优化用户体验....

spring 新版本 ExceptionHandler 了解

发布新版本的应用程序会删除旧版本的文件吗?

检查我的应用在 AppStore 上是不是有新版本

centos 较新版本kernel安装方法