go语言背景介绍

go语言:Google开源,编译型语言,21世纪的C语言
解释型语言:python、php
编译型语言:go、c、c++
编译型语言执行性能高于解释型语言。
image.png
image.png

go语言快捷键

go build -o xxx 给编译的二进制文件重新命名
go fmt main.go 自动格式化文件

区别于c和c++,不能进行偏移和运算,是安全指针。
image.png

image.png

字符串需要注意:

  1. fmt.PrintIn("\t制表符\n换行符")

image.png

  1. // 字符串长度
  2. s := "hello"
  3. fmt.PrintIn(len(s)) //5
  4. s2 := "hello沙河”
  5. fmt.PrintIn(len(s2)) //11
  6. // 拼接字符串
  7. fmt.PrintIn(s+s2) //hellohello沙河
  8. s3 := fmt.Sprintf("%s -%s", s, s2) // hello - hello沙河
  9. fmt.PrintIn(s3)
  10. // 字符串分割
  11. s4 := "how do you do"
  12. fmt.PrintIn(strings.Split(s4, "")) // [how do you do]
  13. // 查看分割后的类型
  14. fmt.Printf("%T\n", strings.Split(s4, " "))
  15. //判断是否包含
  16. fmt.PrintIn(strings.Contains(s4, "do")) // true
  17. // 判断前缀
  18. fmt.PrintIn(strings.HasPrefix(s4, "how")) // true
  19. // 判断后缀
  20. fmt.PrintIn(strings.HasSuffix(s4, "how")) // false
  21. // 判断子串的位置
  22. fmt.PrintIn(strings.Index(s4, "do")) // 4
  23. // 最后子串出现的位置
  24. fmt.PrintIn(strings.LastIndex(s4, "do")) // 11
  25. // join
  26. s5 := []string{"how", "do", "you", "do"} // 定义了一个字符串的切片
  27. fmt.PrintIn(s5) // [how do you do]
  28. fmt.PrintIn(strings.Join(s5, "+")) // how+do+you+do

image.png
image.png