string - 通过强制转换和使用串联运算符将整数附加到字符串

标签 string go integer concatenation

我正在尝试通过 casting 和使用 + 的追加将一个整数与现有字符串连接起来。但它不起作用。

package main

import (
    "fmt"
)

func main() {
    a := 4 
    b := "The value of a is "

    fmt.Println(b + string(a))
}

这会在 go playground 上打印一个垃圾字符在 Unix 终端上什么也没有。这可能是什么原因?这种方法有什么问题?

最佳答案

来自Go language spec :

Converting a signed or unsigned integer value to a string type yields a string containing the UTF-8 representation of the integer.

为了达到预期的结果,您需要使用类似 strconv.Itoa 的方法将您的 int 转换为字符串。 :

package main

import (
    "fmt"
    "strconv"
)

func main() {
    a := 4 
    b := "The value of a is "

    fmt.Println(b + strconv.Itoa(a))
}

关于string - 通过强制转换和使用串联运算符将整数附加到字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46744185/

相关文章:

swift - Swift 中的字符串和字符比较不区分语言环境是什么意思?

javascript - 将字符串转换为货币格式 JavaScript 中的数字

docker - 为什么tty = true(在docker-compose.yml中)在Gin应用程序上突出显示日志?

MySQL UDF 返回 "Error Code: 1127. Can' t 在库中查找符号 'xx'”

c++ - C++中有符号到无符号的转换

java - 检查列表条目是否包含单词序列java

python - 在 Python 中获取网站描述的最佳方法是什么?

go - 如何为指向不同结构的指针实现相同的功能?

python - 存储列表,然后将其作为整数读取

Python 无限整数