版本号比较
在实现自动更新的时候,需要进行版本号的比较。
例如: 1.0.6 和1.0.7比较大小
解决方案:
将版本号的字符串转换成整数来比较。
步骤:
1. 去除字符串中的小数点。(使用正则表达式)
2. 比较两个字符串的长度,长度短的后尾补0,直到两个字符串长度相同。(为了实现 1.0.5.1与1.0.6的比较)。
3. 将两个字符串转换成整数比较。
代码如下:
// 正则表达式去除小数点 //String str1 = "1.0.6".replaceAll("[.]", ""); //String str2 = "1.0.7".replaceAll("[.]", ""); String str1 = "1.0.5.1".replaceAll("[.]", ""); String str2 = "1.0.6".replaceAll("[.]", ""); //长度不同尾部加0填充 if(str1.length()<str2.length()){ for(int i = 0;i< str2.length() - str1.length();i++){ str1 += "0"; } }else{ for(int i = 0;i< str1.length() - str2.length();i++){ str2 += "0"; } } int i1 = Integer.valueOf(str1); int i2 = Integer.valueOf(str2); System.out.println("str1 => i1 = "+i1); System.out.println("str2 => i2 = "+i2);
原文地址:http://blog.csdn.net/li1500742101/article/details/41041401