字符串遍历
package main
import (
"fmt"
)
func main() {
var str string = "hello,world!"
// 传统方式:按字节遍历,所以汉字在utf8通常对应3个字节,如字符串中有汉字会出现乱码
for i := 0; i < len(str); i++ {
fmt.Printf("%c \n", str[i])
}
// 解决办法
var str1 string = "你好"
str2 := []rune(str1)
for i := 0; i < len(str2); i++ {
fmt.Printf("%c \n", str2[i])
}
// for range:默认使用字符方式遍历,因此有中文也是ok的
for index, val := range str {
fmt.Printf("%d ,%c \n", index, val)
}
}
Golang中没有while和do…while
break
- break语句出现在多层嵌套语句块中,可以通过标签指明要终止的是那一层语句块
continue
continue也可以通过标签指明要终止的是哪一层语句块
goto
- Go语言的goto语句可以无条件地转移到程序中指定的行。
- goto语句通常与条件语句配合使用。可用来实现条件转移,跳出循环体等功能。
- 在Go程序设计中一半不主张使用goto语句,以免造成程序流程的混乱,使理解和调试程序都产生困难。
return
return使用在方法或者函数中,标书跳出所在的方法或函数。