3 回答

TA貢獻1783條經驗 獲得超4個贊
遍歷整個切片并跳過第二個元素。
的第一個返回值range是當前元素的索引(從0開始)。您可以使用它來決定是否要跳過。continue關鍵字將立即迭代到最內層循環的下一個元素,而不執行當前步驟的循環體的其余部分。
package main
import "fmt"
func main() {
data := [...]string{"Title", "Description", "Profession", "Gender"}
for i, val := range data {
if i == 1 {
continue
}
fmt.Println(val)
}
}

TA貢獻2016條經驗 獲得超9個贊
如果你的切片總是一樣的,你可以這樣做:
package main
import "fmt"
func main() {
data := [...]string{"Title", "Description", "Profession", "Gender"}
for i, val := range data {
if i == 1 {
continue
}
fmt.Println(val)
}
}
但是,如果你想跳過描述而不考慮切片順序,你可以這樣做:
func main() {
data := [...]string{"Title", "Gender", "Profession", "Description"}
for _, val := range data {
if val == "Description" {
continue
}
fmt.Println(val)
}
}
在第一個示例中,您將按數組索引進行過濾,在第二個示例中,您將按當前數組索引的實際值進行過濾。

TA貢獻1765條經驗 獲得超5個贊
你可以append像這樣跳過
package main
import "fmt"
func main() {
idxToSkip := 1
data := [...]string{"Title", "Description", "Profession", "Gender"}
for _, val := range append(data[:idxToSkip], data[idxToSkip+1:]...) {
fmt.Println(val)
}
}
- 3 回答
- 0 關注
- 117 瀏覽
添加回答
舉報