App版本检测工具类

public class CompareVersionUtil {/*** 三种情况:*  1、当前版本 > 传入的版本 返回 -1*    2、当前版本 = 传入的版本 返回 0*   3、当前版本 < 传入的版本 返回 1* @param onlineVersion 数据库中查询出来的版本* @param currentVersion 当前版本* @return*/public static int compareVersion(String onlineVersion, String currentVersion) {if (onlineVersion.equals(currentVersion)) {return 0;}String[] version1Array = onlineVersion.split("\\.");String[] version2Array = currentVersion.split("\\.");int index = 0;//获取最小长度值int minLen = Math.min(version1Array.length, version2Array.length);int diff = 0;//循环判断每位的大小while (index < minLen && (diff = Integer.parseInt(version1Array[index]) - Integer.parseInt(version2Array[index])) == 0) {index++;}if (diff == 0) {//如果位数不一致,比较多余位数for (int i = index; i < version1Array.length; i++) {if (Integer.parseInt(version1Array[i]) > 0) {return 1;}}for (int i = index; i < version2Array.length; i++) {if (Integer.parseInt(version2Array[i]) > 0) {return -1;}}return 0;} else {return diff > 0 ? 1 : -1;}}
}

java实现APP版本比对工具类相关推荐

  1. (10)Java泛型-Map集合-集合框架工具类-可变参数-静态导入

    -- 部分1.5新特性Java泛型-Map集合-集合框架工具类 泛型 概述: JDK1.5版本以后出现的新特性,用于解决安全问题,是一个类型安全机制. 对于泛型可以这样理解: 没有使用泛型时,只要是对 ...

  2. Java学习总结:58(Collections工具类)

    Collections工具类 Java提供了一个集合的工具类--Collections,这个工具类可以实现List.Set.Map集合的操作.Collections类的常用方法如下: No. 方法 类 ...

  3. java配置文件工具类,java项目加载配置文件的工具类

    java项目加载配置文件的工具类 package com.loadproperties; import java.io.IOException; import java.io.InputStream; ...

  4. Java实现Google的S2算法工具类

    WGS84坐标系 GCJ02坐标系 BD09坐标系的各种转换 WGS84坐标系 GCJ02坐标系 BD09坐标系的各种转换 Google S2 经纬度 转 CellId 经纬度 转 cellToken ...

  5. Java 图片添加数字暗水印工具类

    Java 图片添加数字暗水印工具类. package cnki.thesis.common.utils;import org.opencv.core.*;import java.util.ArrayL ...

  6. Java时间戳与日期格式转换工具类

    Java时间戳与日期格式转换工具类 在做web开发时,有时候需要用到时间戳,在前台进行日期转换,从数据库中取出来是日期格式的,这里记录下使用的转换工具类(这些都是静态方法,通过类名.方法的形式即可调用 ...

  7. java获取客户端的IP地址工具类

    java获取客户端的IP地址工具类 import java.net.InetAddress; import java.net.UnknownHostException;import javax.ser ...

  8. JVM(Java SE 11版本)加载类和接口

    本文介绍了Java虚拟机(Java SE 11版本)加载类和接口. 加载类和接口 加载是指查找具有特定名称的类或接口类型的二进制形式的过程.典型的做法是,查找事先由Java编译器从源代码计算而来二进制 ...

  9. Java判断不为空的工具类总结

    Java判断不为空的工具类总结 1.Java判断是否为空的工具类,可以直接使用.包含,String字符串,数组,集合等等. 1 package com.bie.util; 2 3 import jav ...

最新文章

  1. HTML中将px转换为em的语法,在JavaScript中转换EM为PX(并获得默认字体大小)
  2. python 字典
  3. win10 没有选项 始终使用此应用打开此文件
  4. 在dw怎么关联css文件,重新设置Adobe Dreamweaver的文件关联解决办法
  5. jQueryMobile常用技巧
  6. 什么是微服务_微服务系列笔记:什么是微服务?
  7. hbase 可视化工具_Hadoop工具TOP 9:
  8. 【机器学习】支持向量机面试知识点小结
  9. 【牛客NOIP模拟】牛半仙的魔塔(增强版)【贪心】【并查集】
  10. 使用with关键字让你的Python代码更加Pythonic
  11. 做游戏,学编程(C语言) 20 扫雷
  12. LINUX如何创建一个程序组
  13. Android8.1根据app名字调用显示app的属性页(App info)
  14. 服务器时间和系统时间不同步,电脑时间不同步怎么办 电脑时间同步不了的解决方法【详解】...
  15. 优动漫PAINT拾色器功能介绍
  16. Mysql索引:图文并茂,深入探究索引的原理和使用
  17. 所希望于劳工会的〔1〕
  18. 【图像隐写数据集】图像隐写数据集整理
  19. 【Devc++】双人跑酷小游戏1.3
  20. java多线程并发之旅-09-java 生产者消费者 Producer/Consumer 模式

热门文章

  1. java两两组合(不重复)
  2. 友盟分享c8998报错原因
  3. 微贷网java高级开发工程师
  4. 2021-10-16windows系统还原点创建/查看/配置/删除
  5. 开启CSDN消息免打扰
  6. 老友记第一季台词打印_老友记第一季第一集台词
  7. 软件测试V、W、H模型
  8. 华为否认Mate40升级鸿蒙传闻,华为鸿蒙系统什么时候上市?华为否认Mate40升级鸿蒙传闻...
  9. 作业调度系统--SGE和PBS的使用方法
  10. iphone有关QQ和微信无法收到推送通知的终极解决方案