Java 比較兩個版本號的大小 (通用)

    /*** 版本號比較** @param v1* @param v2* @return 0代表相等,1代表左邊大,-1代表右邊大* Utils.compareVersion("1.0.358_20180820090554","1.0.358_20180820090553")=1*/public static int compareVersion(String v1, String v2) {if (v1.equals(v2)) {return 0;}String[] version1Array = v1.split("[._]");String[] version2Array = v2.split("[._]");int index = 0;int minLen = Math.min(version1Array.length, version2Array.length);long diff = 0;while (index < minLen&& (diff = Long.parseLong(version1Array[index])- Long.parseLong(version2Array[index])) == 0) {index++;}if (diff == 0) {for (int i = index; i < version1Array.length; i++) {if (Long.parseLong(version1Array[i]) > 0) {return 1;}}for (int i = index; i < version2Array.length; i++) {if (Long.parseLong(version2Array[i]) > 0) {return -1;}}return 0;} else {return diff > 0 ? 1 : -1;}}

舉例:

Utils.compareVersion("1.0.358_20180820090554","1.0.358_20180820090553")=1

Utils.compareVersion("1.0.360","1.0.358_20180820090553")=1

Utils.compareVersion("1.0.358.2","1.0.358_20180820090553")=-1

Utils.compareVersion("1.0.0.2","1.0.1")=-1

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286232.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286232.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286232.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

四、登錄注冊頁功能實現《iVX低代碼/無代碼個人博客制作》

注&#xff1a;iVX也有免費直播課《第八期直播課》 首先打開在線編輯器進入我們的項目&#xff1a;https://editor.ivx.cn/ 一、登錄頁功能實現 上一節中已經完成了登錄頁的頁面制作&#xff0c;那么這一節就開始對應的完成登錄頁的功能實現。 登錄頁的功能實現主要是對用戶…

Oracle 12c應用連接VIP輪訓負載均衡?

目前很多生產數據庫都是兩節點RAC&#xff0c;應用連接的數據庫通常會連接SCAN IP或者VIP,這里做一個小實驗&#xff0c;如果我們使用VIP連接&#xff0c; 應該怎樣配置我們的客戶端&#xff0c;負載均衡是否是嚴格意義上的輪訓機制&#xff0c;只有通過自己的測試才能得到準備…

C語言試題三十一之判斷字符串是否為回文?若是則函數返回1,主函數中輸出yes,否則返回0,主函數中輸出no。回文是指順讀和倒讀都是一樣的字符串。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫函數…

關于html5

html5 是用來 將 js 和 css 結合起來 從而實現 各種功能 javascript 用來定義 html5 頁面的邏輯 css 來定義 html5 中的顯示樣式

【SignalR全套系列】之在.Net6中實現SignalR分組通信

微信公眾號&#xff1a;趣編程ACE關注可了解更多的.NET日常實戰開發技巧&#xff0c;如需源碼 請公眾號后臺留言 源碼;[如果覺得本公眾號對您有幫助&#xff0c;歡迎關注]前文回顧【SignalR全套系列】之在.Net6中實SignalR通信SignalR中給客戶端分組調用演示服務端代碼實現1.Pr…

【ArcGIS風暴】中國756個氣象臺站分布Shapefile數據下載

在寫論文時,通常要做研究區概況圖,需要添加氣象站點分布,或者在做氣溫或降水空間插值時,需要將氣溫和降水數據鏈接到氣象臺站上。氣象數據通常可以到資源環境科學與數據中心去下載,為了使用的方便,本文分享中國區域756個氣象臺站shp格式矢量數據,如果你的研究區是西北五…

web上傳大文件的配置

1、項目本身的webconfig 在<system.web>字段下 <httpRuntime targetFramework"4.5" requestLengthDiskThreshold"256" maxRequestLength"1000000000" executionTimeout"120"/> 2、找到C:\Windows\System32\inetsrv\confi…

七、文章管理頁面及功能實現《iVX低代碼/無代碼個人博客制作》

注&#xff1a;iVX也有免費直播課《第八期直播課》 一、文章管理頁頁面制作 文章管理頁的基本結構與首頁類似&#xff0c;我們復制一個首頁&#xff0c;并且重命名首頁的名稱為文章管理頁&#xff1a; 我們接著刪除如下圖所框選部分內容&#xff1a; 接著重命名導航為內容…

Android 發起加入QQ群、打開網址、啟動撥打電話界面

/****************** 發起添加群流程。 ** param key 由官網生成的key* return 返回true表示呼起手Q成功&#xff0c;返回fals表示呼起失敗******************/public static void joinQQGroup(Activity _this, String key){Intent intent new Intent();intent.setData(Ur…

C語言試題三十二之編寫函數function,它的功能是:將一個字符串轉換為一個整數(不得調用c語言提供的將字符串轉換為整數的函數)。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫函數…

【ArcGIS風暴】ArcGIS快捷鍵大全

使用快捷鍵能提高工作效率,本文總結了ArcGIS快捷鍵大全。當然了,為了個性化定制,也可以在ArcGIS中自定義快捷鍵。 擴展閱讀: 【ArcGIS微課1000例】0015:ArcGIS如何創建/自定義快捷鍵? 文章目錄 1. 訪問 ArcMap 菜單命令2. 窗口操縱3. 刷新或暫停地圖繪制4. 通過拖放進行…

游戲引擎cocos2d-android使用大全

做手機游戲需要三個核心的類&#xff0c;即&#xff1a;SurfaceView&#xff0c;SurfaceHolder&#xff0c;Thread。幀數要在30幀左右是最好的。 cocos2d游戲引擎 封裝好的框架&#xff0c;可直接使用 cocos2d-android &#xff08;用java編程&#xff09; 導演&#xff1a;控…

禁用CMFCRibbonApplicationButton的單擊和雙擊事件

為了禁用CMFCRibbonApplicationButton的單擊和雙擊事件&#xff0c;我重載了CMFCRibbonApplicationButton如下: 1. MyRibbonApplicationButton.h文件內容&#xff1a; #pragma once class CMyRibbonApplicationButton : public CMFCRibbonApplicationButton{public: CMyRibbonA…

.net core 拋異常對性能影響的求證之路

一、前言在.net 社區中曾經聽到過很多關于大量拋異常會影響性能這樣的結論&#xff0c;心中一直就存在各種疑問。項目中使用自定義異常來處理業務很爽&#xff0c;但是又擔心大量拋業務異常存在性能問題。查閱了各種文檔&#xff0c;微軟官方對性能優化這一塊也不建議使用過多的…

Android Bootloader LittleKernel的兩篇文章 【轉】

轉自&#xff1a;http://blog.csdn.net/loongembedded/article/details/41747523 2014-12-05 14:37 3599人閱讀 評論(2) 收藏 舉報分類&#xff1a;Android Bootloader&#xff08;68&#xff09; Android 開發之 ---- bootloader &#xff08;LK&#xff09; LK是什么 LK 是 L…

Android Fragment 監聽返回鍵

直接給代碼*-* Fragment&#xff1a; public boolean onKeyDown(int keyCode, KeyEvent event){if ((keyCode KeyEvent.KEYCODE_BACK)){//執行操作((MainActivity) Objects.requireNonNull(getActivity())).viewPager.setCurrentItem(3); }return true;} MainActivity&#…

C語言試題三十三之比較兩個字符串的長度,(不得調用c語言提供的求字符串長度的函數),函數返回較長的字符串。若兩個字符串長度相同,則返回第一個字符串。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫函數…

一、首頁第一個首頁欄制作【仿淘票票系統前后端完全制作(除支付外)】

首頁一共分為3個頁面&#xff0c;分別是首頁&#xff1a; 影院&#xff1a; 我的&#xff1a; 一、標題頭制作 首先我們新建一個 web 相對應用&#xff0c;隨后點擊前臺&#xff0c;在前臺新建一個頁面&#xff1a; 接著給予這個頁面一個背景色&#xff1a; 為了使頁面…

【CASS精品教程】Win 10操作系統CAD 2006+CASS 7.1安裝圖文經典教程(附安裝包下載)

目前大多數機器的操作系統是Win10,然而Win10系統下安裝軟件就不如Win XP或Win 7下那么順暢。作為一個GISer,軟件的熟練安裝是基本功,因此本文就以Win0系統為例,演示CAD 2006+CASS 7.1的安裝過程,文末附CAD 2006+CASS 7.1安裝包下載。 目錄 一、軟件準備: 1. CAD 2006 2…

teamviewer 過期解決辦法

teamviewer 過期解決辦法 參考資料&#xff1a; http://blog.csdn.net/z249683156/article/details/41842271posted on 2015-12-21 13:32 雪山看雪 閱讀(...) 評論(...) 編輯 收藏 轉載于:https://www.cnblogs.com/zker/p/5063164.html