2 回答

TA貢獻1802條經驗 獲得超4個贊
修改您鏈接的確切示例,并將整數更改為字符串對我有用:
package main
import (
"container/list"
"fmt"
)
func main() {
// Create a new list and put some numbers in it.
l := list.New()
e4 := l.PushBack("4")
e1 := l.PushFront("1")
l.InsertBefore("3", e4)
l.InsertAfter("2", e1)
// Iterate through list and print its contents.
for e := l.Front(); e != nil; e = e.Next() {
fmt.Println(e.Value)
}
}

TA貢獻1836條經驗 獲得超13個贊
如果您查看鏈接的包的源代碼,該List類型似乎包含一個Elements列表。望著Element你會看到它有一個出口領域被稱為Value是一種interface{}類型,這意味著它可能是從字面上任何東西:string,int,float64,io.Reader,等。
要回答您的第二個問題,您會看到List有一個名為Remove(e *Element). 你可以這樣使用它:
fmt.Println(l.Len()) // prints: 4
// Iterate through list and print its contents.
for e := l.Front(); e != nil; e = e.Next() {
if e.Value == "4" {
l.Remove(e) // remove "4"
} else {
fmt.Println(e.Value)
}
}
fmt.Println(l.Len()) // prints: 3
總的來說,Golang 文檔通常非??煽?,因此您應該始終先查看那里。
https://golang.org/pkg/container/list/#Element
- 2 回答
- 0 關注
- 206 瀏覽
添加回答
舉報