返回顶部
首页 > 资讯 > 精选 >Go 冒号等于运算符和一个新变量
  • 103
分享到

Go 冒号等于运算符和一个新变量

go语言 2024-02-10 17:02:32 103人浏览 泡泡鱼
摘要

PHP小编新一在这里为大家介绍一项新的特性——Go 冒号等于运算符和一个新变量。这个运算符的作用是在Go语言中创建一个新的变量,同时将其初始化为一个表达式的值。这个特性的引入使得代码更

PHP小编新一在这里为大家介绍一项新的特性——Go 冒号等于运算符和一个新变量。这个运算符的作用是在Go语言中创建一个新的变量,同时将其初始化为一个表达式的值。这个特性的引入使得代码更加简洁和易读,同时也减少了冗余的代码量。通过使用冒号等于运算符,我们可以在声明变量的同时为其赋值,提高了代码的效率和可读性。在接下来的文章中,我们将详细介绍这个新特性的用法和注意事项,希望能给大家带来帮助和启发。

问题内容

这可能不是一个新问题,但我在任何地方都找不到答案。

使用此代码,在循环内的函数调用线上,:== 运算符都不起作用。

我有一个用例,我需要在 for 循环之外声明一次大数组并在函数中更新,然后传回。但该函数还返回另一个变量,该变量每次都不同并在该循环内使用。

去游乐场链接:1

import "fmt"

func someFunc(names []string) (int, []string) {
    foo := 35 // Just for the example
    names = append(names, "Bob")
    return foo, names
}

func main() {

    names := []string{"Fred", "Mary"}

    for i := 0; i < 10; i++ {
        newVariable, names := someFunc(names) // This line is the problem
        fmt.Println(newVariable)
    }

}

如何重构它以使其按预期工作?

解决方法

在 := 之前声明 newVariable 怎么样?

for i := 0; i < 10; i++ {
    var newVariable int
    newVariable, names = someFunc(names)
    fmt.Println(newVariable)
}

以上就是Go 冒号等于运算符和一个新变量的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: Go 冒号等于运算符和一个新变量

本文链接: https://lsjlt.com/news/563170.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作