我不知道我在做什么,我决定尝试使用列表(docs) 这是我能想到的最多

  1. 为什么%v打印{0xf840024660 <nil> 0xf840023660 4}
  2. 为什么我没有收到与字符串混合的错误?
  3. 我该怎么强迫一个类型? (例如只有int,只有字符串等)

码:

package main

import "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())
}

===============>>#1 票数:13 已采纳

首先,您可能不需要container/list 你可能正在寻找像切片和append()类的东西。 例如:

x := []int { 1, 2, 3 }
x = append(x, 4)
x = append(x, 5, 6)

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

===============>>#2 票数:2

要回答对Front()Back()的调用的第一个问题,这是因为您打印出不包含可打印值的Element结构 如果要打印Element.Value ,则必须执行(*ls2.Front()).Value 类似的原因也适用于为什么fmt.Println(ls)打印很奇怪。

  ask by translate from so

未解决问题?本站智能推荐:

3回复

从Go中的字符串中解析多个整数?

抱歉标题,我不知道怎么说 我对此代码有疑问 我想将IP地址转换为整数 你看我写了这么难看的代码 strconv.Atoi的第一个retrive数字然后将其转换为int64 如何简化这个?
4回复

Go:将数组中的字符串转换为整数

如何将数组中的字符串转换为数组中的整数? 至 我在网上搜索了一些解决方案但找不到它。 我试图遍历数组并执行strconv.ParseFloat(v,64)其中v是值,但它不起作用。
1回复

在Go中的字符串列表上拆分字符串

是否有可能不仅拆分一个字符串而且拆分一串字符串? 即 但不是使用一个字符串,而是使用一段字符串:
3回复

从Go中的字符串整数中获取整数切片?

我想将表示和整数的字符串转换为包含组成初始字符串的每个整数的切片。 游乐场链接 我尝试在strconv 使用Atoi Atoi()函数,它给出了“不能在strconv参数中使用toCheck [i](类型字节)作为类型字符串” 。 我也尝试过int()转换,但是它给了我我认为是AS
3回复

拆分字符串并将子字符串转换为Go中的整数

我有一个包含1,2,3类的变量。 这些实际上是三个值,我希望在三个变量中有v1 , v2 , v3 (但不在数组中)。 现在我正在以下列方式做到这一点: 这是有效的,虽然它非常重复,并且在Go中感觉不对。 什么是更清洁的方法来解决这个问题?
5回复

在Go中将字符串转换为整数类型?

我正在尝试将从flag.Arg(n)返回的字符串转换为int 。 在Go中这样做的惯用方法是什么?
2回复

Go中的字符串是什么?

Go中的string是C(或char[] )中的char*还是C ++中的类string ......还是别的什么? 我不明白字符串是如何成为原始类型的。
1回复

比较Go中的字符串

我正在尝试在字符串中找到命名捕获组的开头以创建一个简单的解析器(请参阅相关问题 )。 为此, extract函数会记住last4变量中最后一个字符。 如果最后4个字符等于“(?P <”,则它是捕获组的开头: http://play.golang.org/p/pqA-wCuvux
1回复

Go中的不可变字符串

有谁能解释我为什么在功能changeMe()更改后&c1.name的地址相同。 我认为在Go中字符串是不可变的。
2回复

Go中的大字符串?

有没有办法将字符串(实质上是一个庞大的数字)从字符串转换为Go中的Big int? 我试着先把它转换成字节数组 array := []byte(string) 然后将数组转换为BigInt。 我认为这很有效,但输出与原始输入不同。 所以我猜测转换由于某种原因没有做正确的