Mat*_*att 5 substring go slice
我用空格分割一个字符串:
splstr = strings.Split(str, " ")
Run Code Online (Sandbox Code Playgroud)
然后我迭代每个单词,看看第一个字符,如下所示:
splstr[i][0] == "#"
Run Code Online (Sandbox Code Playgroud)
但我从这一行得到了这些错误:
...:无法将"#"转换为uint8类型
...:无效操作:splstr [i] [0] =="#"(不匹配的类型uint8和string)
但后来我拼接了它:
splstr[i][:1] == "#"
Run Code Online (Sandbox Code Playgroud)
这很有效.我明白为什么[:1]是类型string,但为什么是[0]类型uint8?(我正在使用Go 1.1.)
mna*_*mna 10
因为字符串上的数组表示法可以访问字符串的字节,如语言规范中所述:
http://golang.org/ref/spec#String_types
字符串的字节可以通过整数索引0到len(s)-1来访问.
(byte是uint8的别名)