比较版本号

 1 // 比较版本号
 2     public static int compareVersion(String newVersion, String currentVersion) {
 3         if (TextUtils.isEmpty(newVersion)) {
 4             if (TextUtils.isEmpty(currentVersion)) {
 5                 return 0;
 6             } else {
 7                 return -1;
 8             }
 9         } else if (TextUtils.isEmpty(currentVersion)) {
10             return 1;
11         }
12
13         String[] first = newVersion.split("\\.");
14         String[] second = currentVersion.split("\\.");
15         Log.d(TAG, "first: " + Arrays.asList(first) + ", second: " + Arrays.asList(second));
16
17         int count = Math.min(first.length, second.length);
18         for (int i = 0; i < count; i++) {
19             try {
20                 int firstVersionNumber = Integer.parseInt(first[i]);
21                 int secondVersionNumber = Integer.parseInt(second[i]);
22
23                 if (firstVersionNumber < secondVersionNumber) {
24                     return -1;
25                 } else if (firstVersionNumber > secondVersionNumber) {
26                     return 1;
27                 }
28
29             } catch (Exception ignored) {
30             }
31         }
32
33         if (first.length < second.length) {
34             return -1;
35         } else if (first.length > second.length) {
36             return 1;
37         }
38
39         return 0;
40     }

时间: 2024-10-11 17:39:49

比较版本号的相关文章

安卓手机如何修改系统版本号的教程(一键完成)

本节教大家如何一键修改手机的系统版本号,借助琢石模拟器强大的参数修改功能,帮我们轻松的完成手机系统版本号的修改. 如果您的手机还没安装琢石模拟器,请先到官网ZS8K.COM自行下载并按照官网教程完成激活. 下面我们开始演示如何修改系统版本号. 1.在没使用琢石模拟器之前,我们先看下手机真实的系统版本信息,可以看到版本是4.2.1,版本号是HM 1 20140309-151349,API级别是17. 2.打开琢石模拟器到虚拟环境列表中,点一键生成,生成一套新的系统参数,其中SDK是16(也就是AP

ANDROID版本号和版本名称的重要性介绍

转载请注明出处http://blog.csdn.net/y150481863/article/details/41249159,来自[http://blog.csdn.net/y150481863] 当我们在刚开始学习Android的时候,可能不会过多的关注这个位于manifest.xml文件中的versionCode和versionName. 但是其实一个好的版本控制,对于我们有至关重要的作用. 现在打算写一点基础的东西,突然想到这个知识点,所以就记录下来,作为笔记.有不够详尽或者错误的地方欢

eclipse 版本号

Eclipse 3.1 版本代号 IO [木卫1,伊奥]  Eclipse 3.2 版本代号 Callisto [木卫四,卡里斯托 ]Eclipse 3.3 版本代号 Eruopa [木卫二,欧罗巴 ]  Eclipse 3.4 版本代号 Ganymede [木卫三,盖尼米德 ]  Eclipse 3.5 版本代号 Galileo [伽利略]  Eclipse 3.6 版本代号 Helios [太阳神] Eclipse 3.7 版本代号 Indigo [靛青]Eclipse 4.2 版本代号 J

jquery版本号升级不兼容的问题:$(&amp;quot;input&amp;quot;).attr(&amp;quot;value&amp;quot;)功能发生改变

之前项目中使用的是jquery-1.6.3.js,在这个版本号中,假设我们想获取输入框的值,能够使用$("input").attr("value")或者是$("input").val(),这2种方式是等价的. <input type="text" id="speed" /> $("#speed").attr("value"); $("#speed

Nginx根据客户端版本号跳转至后台相应服务器

Nginx通过客户端的APP版本号来判定跳转后台对应的版本号的服务器,配置如下: upstream appserver{ server 10.9.14.1:799  weight=5; } server { listen 80; server_name uatv2.yaok.com; charset utf-8; access_log  logs/uat.yaok.com.log  logstash_json; location ^~ /appapi/ { set $newIp "10.7.4.

Linux下查看版本号,查看存在的普通用户

1. 查看版本号 uname -a ## 查看所有信息 uname --help ## 查看关于uname命令的帮助 2. 查看存在的普通用户 vim /etc/passwd ## 查看passwd文件(用户的配置文件) 得到如下图所示信息: 文件里每行的格式为 用户名:密码占位符x:用户ID:组ID首先root是根用户用户ID >=500 为普通用户 例如:root 用户ID=1 user 用户ID=500user1 用户ID=501 user2 用户ID=502user3 用户ID=503

Node.js包的依赖及版本号(转)

原文:  http://www.cnphp6.com/archives/64130 Node.js最重要的一个文件就是package.json,其中的配置参数决定了功能.例如下面就是一个例子 { "name": "test", "version": "1.0.0", "description": "test", "main": "main.js",

tomcat/tomee隐藏版本号

有时候为了服务器安装很多信息是不能显露出来了,这其中就包含了tomcat服务器的版本号. 修改前如下:1.进入tomcat安装路径(这里以/usr/local/tomcat为例说明): cd  /usr/local/tomcat/libunzip catalina.jarcd org/apache/catalina/utilvim ServerInfo.properties 2.找到最下面,类似台下信息(版本不同以下信息不同): server.info=Apache Tomcat/7.0.52

软件版本号规范与命名原则

1. 软件版本阶段说明 * Alpha版: 此版本表示该软件在此阶段主要是以实现软件功能为主,通常只在软件开发者内部交流,一般而言,该版本软件的Bug较多,需要继续修改.* Beta版: 该版本相对于α版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过多次测试来进一步消除,此版本主要的修改对像是软件的UI.* RC版: 该版本已经相当成熟了,基本上不存在导致错误的BUG,与即将发行的正式版相差无几.* Release版: 该版本意味“最终版本”,在前面版本的一系列测试版之后,终

nginx 修改并隐藏版本号

1  更改版本信息 curl -I 192.168.10.11|grep Server 第一种   修改版本及版本号 nginx编译前更改 src/core/nginx.h #define nginx_version      1008001 #define NGINX_VERSION      "1.8.1"  #修改想要显示的版本如:2.2.23 #define NGINX_VER          "nginx/" NGINX_VERSION        #