在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1,运算符算数运算符:+ - * / % ++ -- 关系运算符:== != < > <= >== 逻辑运算符:按位与 & 按位或 | 异或 ^ 左移<< 右移 >> 赋值运算符:= += -= *= /= 等等算数运算符和逻辑运算符与 = 组合 其他运算符 运算符 术语 示例 说明
& 取地址运算符 &a 变量a的地址
* 取值运算符 *a 指针变量a所指向内存的值
2,流程控制Go语言支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构。 选择结构1)if var a int = 3 if a == 3 { //条件表达式没有括号 fmt.Println("a==3") } //支持一个初始化表达式, 初始化字句和条件表达式直接需要用分号分隔 if b := 3; b == 3 { fmt.Println("b==3") } if ... else if a := 3; a == 4 { fmt.Println("a==4") } else { //左大括号必须和条件语句或else在同一行 fmt.Println("a!=4") } if ... else if ... else if a := 3; a > 3 { fmt.Println("a>3") } else if a < 3 { fmt.Println("a<3") } else if a == 3 { fmt.Println("a==3") } else { fmt.Println("error") } 2)switch Go里面switch默认相当于每个case最后带有break,匹配成功后不会自动向下执行其他case,而是跳出整个switch, 但是可以使用fallthrough强制执行后面的case代码: var score int = 90 switch score { case 90: fmt.Println("优秀") //fallthrough case 80: fmt.Println("良好") //fallthrough case 50, 60, 70: fmt.Println("一般") //fallthrough default: fmt.Println("差") } 循环结构1)for var i, sum int for i = 1; i <= 100; i++ { sum += i } fmt.Println("sum = ", sum) 2)rang 关键字 range 会返回两个值,第一个返回值是元素的数组下标,第二个返回值是元素的值 s := "abc" for i := range s { //支持 string/array/slice/map。 fmt.Printf("%c\n", s[i]) } for _, c := range s { // 忽略 index fmt.Printf("%c\n", c) } for i, c := range s { fmt.Printf("%d, %c\n", i, c) } 跳转语句1)break和continue for i := 0; i < 5; i++ { if 2 == i { //break //break操作是跳出当前循环 continue //continue是跳过本次循环 } fmt.Println(i) } 注意:break可⽤于for、switch、select,⽽continue仅能⽤于for循环。 2)goto 用goto跳转到必须在当前函数内定义的标签 func main() { for i := 0; i < 5; i++ { for { fmt.Println(i) goto LABEL //跳转到标签LABEL,从标签处,执行代码 } } fmt.Println("this is test") LABEL: fmt.Println("it is over") }
|
请发表评论