i := 123
s := string(i)
Run Code Online (Sandbox Code Playgroud)
s是'E',但我想要的是"123"
请告诉我如何获得"123".
在Java中,我可以这样做:
String s = "ab" + "c" // s is "abc"
Run Code Online (Sandbox Code Playgroud)
我怎么能concat在Go中使用两个字符串?
我试图从返回的字符串转换flag.Arg(n)成int.在Go中这样做的惯用方法是什么?
如何在Go中将float64转换为int?我知道该strconv包可用于将任何内容转换为字符串或从字符串转换,但不能在数据类型之间转换,其中一个不是字符串.我知道我可以使用fmt.Sprintf将任何东西转换为字符串,然后将strconv其转换为我需要的数据类型,但这种额外的转换似乎有点笨拙 - 有更好的方法吗?
是否存在将bool转换为整数的内置方法,反之亦然?我尝试过普通的转换,但由于它们使用不同的底层类型,转换是不可能的经典方式.我已经倾注了一些规范,但我还没有找到答案.
在下面的代码中,我string用符文迭代一个符文,但实际上我需要int执行一些校验和计算.我真的需要来编码rune成一个[]byte,然后将其转换为一个string,然后用Atoi获得的int出来的rune?这是惯用的方式吗?
// The string `s` only contains digits.
var factor int
for i, c := range s[:12] {
if i % 2 == 0 {
factor = 1
} else {
factor = 3
}
buf := make([]byte, 1)
_ = utf8.EncodeRune(buf, c)
value, _ := strconv.Atoi(string(buf))
sum += value * factor
}
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我,如果支持自动转换数字类型.现在我必须手动将我所有计算的结果转换为int或int64,并跟踪我正在使用的数字类型.
我需要在Golang中转换int32为string.是否有可能转换int32为stringGolang而不转换为int或int64首先?
Itoa需要一个int.FormatInt需要一个int64.
bitSet := true
var bitSetVar int8
Run Code Online (Sandbox Code Playgroud)
我怎么能分配bitSet到bitSetVar的1
我可以做这个:
if bitSet {
bitSetVar = 1
} else {
bitSetVar = 0
}
Run Code Online (Sandbox Code Playgroud)
这是最好的方法吗?
http://play.golang.org/p/BoZkHC8_uA
我想将uint8转换为字符串,但无法弄清楚如何.
package main
import "fmt"
import "strconv"
func main() {
str := "Hello"
fmt.Println(str[1]) // 101
fmt.Println(strconv.Itoa(str[1]))
}
Run Code Online (Sandbox Code Playgroud)
这给了我 prog.go:11: cannot use str[1] (type uint8) as type int in function argument
[process exited with non-zero status]
任何的想法?
我想在golang中将字符串转换为整数.但我不知道字符串的格式.例如,"10"- > 10,"65.0"- > 65,"xx"- > 0,"11xx" - > 11,"xx11" - > 0
我做了一些搜索并找到了strconv.ParseInt().但它无法处理"65.0".所以我必须检查字符串的格式.
有没有更好的办法?