版本字串比較工具介面 常用介面函式

2021-08-17 18:21:26 字數 1064 閱讀 7286

版本公升級比較常用的介面,字串解析,不是很難,但沒必須重複造輪子,儲存乙份網上搜到的實現:

/**

* 比較版本號的大小,前者大則返回乙個正數,後者大返回乙個負數,相等則返回0

**@param version1

*@param version2

*@return

*/public

static

intcompareversion(string version1, string version2) throws exception

string versionarray1 = version1.split("\\.");//注意此處為正則匹配,不能用".";

string versionarray2 = version2.split("\\.");

int idx = 0;

int minlength = math.min(versionarray1.length, versionarray2.length);//取最小長度值

int diff = 0;

while (idx < minlength

&& (diff = versionarray1[idx].length() - versionarray2[idx].length()) == 0

//先比較長度

&& (diff = versionarray1[idx].compareto(versionarray2[idx])) == 0)

//如果已經分出大小,則直接返回,如果未分出大小,則再比較位數,有子版本的為大;

diff = (diff != 0) ? diff : versionarray1.length - versionarray2.length;

return diff;

}

private

boolean

stringismac(string val) :)[a-fa-f0-9]";

if (val.matches(truemacaddress)) else

}

shell指令碼字串 數值比較

eq 等於,如 if a eq b ne 不等於,如 if a ne b gt 大於,如 if a gt b ge 大於等於,如 if a ge b lt 小於,如 if a lt b le 小於等於,如 if a le b 小於 需要雙括號 如 a b 小於等於 需要雙括號 如 a b 大於 需要...

Js 字串介面

let str abcd let res1 str.split a b c d let res2 str.split c ab d 1.str.slice start,end end位置不會擷取 let str abcdef let res1 str.slice 2,4 cd let res2 st...

C 字串操作介面

選用c 標準程式庫中的string類,是因為他和c string比較起來,不必擔心記憶體是否足夠 字串長度等等,而且作為乙個類出現,他整合的操作函式足以完成我們大多數情況下 甚至是100 的需要。我們可以用 進行賦值操作,進行比較,做串聯 是不是很簡單?首先,為了在我們的程式中使用string型別,...