示例 1:
輸入: version1 = "0.1", version2 = "1.1"
輸出: -1
示例 2:
輸入: version1 = "1.0.1", version2 = "1"
輸出: 1
示例 3:
輸入: version1 = "7.5.2.4", version2 = "7.5.3"
輸出: -1
示例 4:
輸入:version1 = "1.01", version2 = "1.001"
輸出:0
解釋:忽略前導零,「01」 和 「001」 表示相同的數字 「1」。
示例 5:
輸入:version1 = "1.0", version2 = "1.0.0"
輸出:0
解釋:version1 沒有第**修訂號,這意味著它的第**修訂號預設為 「0」
public int compareversion(string version1, string version2)
return 0;
}
精簡版
需要注意的是 短的string要有補0操作
1、如果用「.」作為分隔的話,必須是如下寫法:string.split("\\."),這樣才能正確的分隔開,不能用string.split(".");
2、如果用「|」作為分隔的話,必須是如下寫法:string.split("\\|"),這樣才能正確的分隔開,不能用string.split("|");
「.」和「|」都是轉義字元,必須得加"\\";
3、如果在乙個字串中有多個分隔符,可以用「|」作為連字元,比如:「a=1 and b =2 or c=3」,把三個都分隔出來,可以用string.split("and|or");
split分隔符總結
1.字元"|", "*" , "+" , "." 得加上轉義字元,前面加上"\\"。
2.而如果是"\",那麼就得寫成"\\\\"(4個)。
3.如果乙個字串中有多個分隔符,可以用"|"作為連字元。
摘自
關於split()方法, 寫的非常詳細,概括起來
string split(string regex,int limit) 根據給定正規表示式的匹配拆分此字串。
預設的方法中 limit=0,會執行切割無限次並且去掉該陣列最後的所有空字串
limit > 0 則會切割 不大於limit次,切割按照從左到右進行
limit < 0 則無限次,但是會保留所有的空字串
比較版本號
題目 比較兩個版本號 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不是 兩個半 ...