gpt4 book ai didi

go - 操作字符串数组中的数据

转载 作者:数据小太阳 更新时间:2023-10-29 03:46:33 26 4
gpt4 key购买 nike

我有一个字符串数组:

var a [5]string
a[0] = "red|apple|1"
a[1] = "yellow|apple|3"
a[2] = "red|apple|4"

我需要将数据转换为数组或映射或其他任何内容,但如果管道之间的第一个和第二个值相同,则应添加数字,因此我想要的输出将是:

var b [5]string
a[0] = "red|apple|5"
a[1] = "yellow|apple|3"

感谢任何帮助。

最佳答案

您可以使用 map 来实现这一点。

var a [3]string
a[0] = "red|apple|1"
a[1] = "yellow|apple|3"
a[2] = "red|apple|4"

b := make(map[string]int)

for _, s := range a {
k := s[:len(s)-2]
v := s[len(s)-1:]
i, err:= strconv.Atoi(v) // please, check for errors
if err != nil {
fmt.Println("bad input")
continue
}
b[k] += i
}

for k, v := range b {
fmt.Println(k, v)
}

输出:

yellow|apple 3
red|apple 5

关于go - 操作字符串数组中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47497218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com