在開發中大家應該會遇到版本公升級的問題,那麼怎麼對比版本號呢?特別是有的時候版本號長度還不等
如:高版本號為6.8.0 而本地版本號為6.7.0.1
如果是一般的位數相等的版本號解決方法可以是:
1.去掉版本號中的「.「,然後轉成float等數字進行對比即可。
2.迴圈挨個字元對比,遇到不等的即可break;
如果是版本號位數不等的情況,上邊第二種方法也可以適用,但是稍顯繁瑣。
解決方法:
1.比較笨的方法
對比位數,將位數短的進行字串補"0",進行位數對齊,然後再轉成float進行數字對比。
2.用字串compare方法
[value compare:(nsstring *) options:(nsstringcompareoptions)];
ios字串對比有多種可選值
enum
這裡我們選用
nswidthinsensitivesearch = 256,//忽略字串的長度,比較出結果
這樣就可以忽略字串長度進行比較了
比較結果對比
typedef enum
_nscomparisonresult nscomparisonresult;
此方法為推薦方法。 比較版本號
題目 比較兩個版本號 version1 和 version2。如果 version1 version2 返回 1,如果 version1 version2 返回 1,除此之外返回 0。你可以假設版本字串非空,並且只包含數字和 字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5 不是 兩個半 ...
比較版本號
比較兩個版本號 version1 和 version2。如果 version1 version2 返回 1,如果 version1 version2 返回 1,除此之外返回 0。你可以假設版本字串非空,並且只包含數字和 字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5 不是 兩個半 也不是...
比較版本號
比較版本號 比較兩個版本號 version1 和 version2。如果 version1 version2 返回1,如果 version1 version2 返回 1,除此之外返回0。你可以假設版本字串非空,並且只包含數字和.字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5不是 兩個半 ...