经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » Go语言 » 查看文章
Go基础及语法(二)
来源:cnblogs  作者:_Biko  时间:2021/1/18 16:29:02  对本文有异议

运算符

算术运算符

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := 6
  5. b := 2
  6. c := a + b //加
  7. d := a - b //减
  8. e := a * b //乘
  9. f := a / b //除
  10. fmt.Println(c, d, e, f) //8 4 12 3
  11. }

逻辑运算符

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := true
  5. b := false
  6. c := a && b //与
  7. d := a || b //或
  8. e := !a //非
  9. fmt.Println(c, d, e) //false true false
  10. }

位运算符

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := 0b0101
  5. b := 0b0110
  6. c := a & b //与
  7. d := a | b //或
  8. e := a ^ b //异或
  9. f := b >> 1 //右移
  10. g := b << 1 //左移
  11. fmt.Println(c, d, e, f, g) //4 7 3 3 12
  12. }

赋值运算符

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := 6
  5. b := 2
  6. a += b //加等于:a = 6 + 2 = 8
  7. a -= b //减等于:a = 8 - 2 = 6
  8. a *= b //乘等于:a = 6 * 2 = 12
  9. a /= b //除等于:a = 12 / 2 = 6
  10. a++ //a=6+1=7
  11. a-- //a=7-1=6
  12. fmt.Println(a) //6
  13. }

比较运算符

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := 6
  5. b := 2
  6. c := a < b //小于
  7. d := a <= b //小于等于
  8. e := a > b //大于
  9. f := a >= b //大于等于
  10. g := a == b //等于
  11. h := a != b //不等于
  12. fmt.Println(c, d, e, f, g, h) //false false true true false true
  13. }

数组(Array)

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := []int{1, 2, 3} //中括号里可填数,代表数组预留大小,可不填,为自适应
  5. b := [][]int{[]int{1, 2}, []int{3, 4}}
  6. c := make([]int, 3, 4) //make开辟一个内存空间
  7. fmt.Println(a, b, c) //[1 2 3] [[1 2] [3 4]] [0 0 0]
  8. a = append(a, 4) //在数组a后插入元素4
  9. fmt.Println(a) //[1 2 3 4]
  10. var d = make([]int, 5)
  11. copy(d, a) //拷贝
  12. fmt.Println(d) //[1 2 3 4 0]
  13. //遍历方法一
  14. for k, v := range d {
  15. fmt.Printf("[%d %d],", k, v) //[0 1],[1 2],[2 3],[3 4],[4 0],
  16. }
  17. //遍历方法二
  18. for i := 0; i < len(d); i++ {
  19. fmt.Printf("%d,", d[i]) //1,2,3,4,0,
  20. }
  21. }

指针

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := "a"
  5. b := &a //&指向内存地址,*指向内存地址上的内容
  6. fmt.Print(a, *b, b) //a a 0xc...
  7. }

map

map存储的是键值对的数据
map遍历与数组类似

  1. package main
  2. import "fmt"
  3. func main() {
  4. a := make(map[string]string) //初始化map
  5. a["key1"] = "value1" //增/改键值对
  6. a["key2"] = "value2"
  7. fmt.Println(a) //map[key1:value1 key2:value2]
  8. fmt.Println(a["key2"]) //value2
  9. fmt.Printf("%s, %T\n", a["key3"], a["key3"]) //, string(没有对应的key也不会报错)
  10. k1, v1 := a["key2"]
  11. fmt.Println(k1, v1) //value2 true
  12. delete(a, "key2") //删除键值对
  13. k2, v2 := a["key2"]
  14. fmt.Println(k2, v2) // false
  15. }

原文链接:http://www.cnblogs.com/bgr1115/p/14292793.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号