版本号比较versionCompare 发表于 2018-07-18 | 分类于 Android , 代码片段 | | 阅读次数: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647/** * 版本号比较versionCompare方法,java实现 * if v1 > v2 , return 1; * if v1 < v2 , return 2; * if equal , return 0; * input error ,return -1; */public class Test { public static void main(String[] versions) { int result1 = versionCompare("0.1.5", "0.1.5"); System.out.print("resultCode1:" + result1); int result2 = versionCompare("0.2.5", "0.1.5"); System.out.print("resultCode1:" + result2); int result3 = versionCompare("0.1.4", "0.1.5"); System.out.print("resultCode1:" + result3); int result4 = versionCompare("0.1.5c测试", "0.1.5"); System.out.print("resultCode1:" + result4); } public static int versionCompare(String v1, String v2) { Pattern pattern = Pattern.compile("\\d+(\\.\\d+)*"); if (!pattern.matcher(v1).matches() || !pattern.matcher(v2).matches()) { return -1; } String[] str1 = v1.split("\\."); String[] str2 = v2.split("\\."); int length = str1.length < str2.length ? str1.length : str2.length; for (int i = 0; i < length; i++) { int diff = Integer.valueOf(str1[i]) - Integer.valueOf(str2[i]); if (diff == 0) { continue; } else { return diff > 0 ? 1 : 2; } } return 0; }} 坚持原创技术分享,您的支持将鼓励我继续创作! 打赏 微信支付 支付宝 本文作者: ZhangMiao 本文链接: https://zhangmiao.space/posts/d2f8db9f.html 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!