为了账号安全,请及时绑定邮箱和手机立即绑定

go中的字符串和整数列表?

go中的字符串和整数列表?

Go
繁花不似锦 2021-06-02 16:45:58
我不知道我在做什么,我决定尝试在 go 中使用列表(文档)。这是我能想到的最多的为什么 %v 打印{0xf840024660 <nil> 0xf840023660 4}?为什么我在将整数与字符串混合时没有收到错误消息?如何强制类型?(例如仅整数,仅字符串等)代码:package mainimport "fmt"import "container/list"func main() {    ls := list.New()    ls.PushBack("a")    ls.PushBack(4)    ls.PushBack("5")    fmt.Println(ls)    ls2 := list.New()    ls2.PushBack(4)    ls2.PushBack(8)    fmt.Printf("%v\naaa\n", *ls2.Front())    fmt.Println(*ls2.Back())}
查看完整描述

2 回答

?
慕妹3146593

TA贡献1820条经验 获得超9个赞

首先,你可能不想要container/list. 您可能正在寻找切片和append(). 例如:


x := []int { 1, 2, 3 }

x = append(x, 4)

x = append(x, 5, 6)

container/list允许你混合类型的原因是它interface{}用来保存值,任何类型都满足空接口。


查看完整回答
反对 回复 2021-06-07
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

要回答你的第一个问题的调用Front()Back(),那是因为你打印出来的Element结构不包括可打印的值。如果你想打印Element.Value你必须做的(*ls2.Front()).Value。类似的原因也适用于fmt.Println(ls)打印怪异的原因。


查看完整回答
反对 回复 2021-06-07
  • 2 回答
  • 0 关注
  • 195 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信