-1
這裏是圍棋strings.Split永遠不會返回零或零長度片?
ips := strings.Split(IP, ",")
if len(ips) < 1 {
return fmt.Errorf("'%v' ip is wrong", ips)
}
一塊我的代碼我試用了一下,似乎ips
變量永遠是零。例如,空字符串會產生一段空字符串(長度爲1)。
您認爲我可以刪除if
塊嗎?
這裏是圍棋strings.Split永遠不會返回零或零長度片?
ips := strings.Split(IP, ",")
if len(ips) < 1 {
return fmt.Errorf("'%v' ip is wrong", ips)
}
一塊我的代碼我試用了一下,似乎ips
變量永遠是零。例如,空字符串會產生一段空字符串(長度爲1)。
您認爲我可以刪除if
塊嗎?
你是對的:strings.Spit()
永遠不會返回零值。結果將是類型爲[]string
,至少包含一個包含給定字符串的元素。
是否可以刪除if塊取決於:如果len(ips) < 2
?您的代碼是否有問題?如果沒有,您可以安全地移除if塊。
然而,如果例如你只對ips[1]
感興趣,那麼你肯定需要先檢查。
我應該完成我的問題「零或零長度切片」如果我運行'strings.Split(「」,「,」)'長度爲1 https://play.golang.org/p/Kaddfg9CiF – Vitalii
輸出切片總是至少有一個元素。它是有道理的,即使你嘗試分割空字符串,函數將返回一個元素的切片 - 空字符串。 – bayrinat
謝謝。將糾正我的答案 – TehSphinX