走进GO语言基础语言|青训营笔记

83 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第1天。

一、本堂课重点内容:

  • 1.GO语言的特点优势
  • 2.GO语言变量类型
  • 3.GO语言基础语法
  • 4.GO语言基本函数
  • 5.实例

二、详细知识点介绍

1.GO语言的特点优势

  • 高性能、高并发
    • 这是go语言的主要优点,在多核处理器上运行。
  • 语法简单、学习曲线平缓
  • 丰富的标准库
    • 类似于python有很多库
  • 完善的工具链
  • 静态链接
    • 不需要像java那样需要jdk的环境
  • 快速编译
  • 跨平台
  • 垃圾回收
    • 不需要像C++和C语言一样考虑

2.GO语言变量类型

常见的变量包括int、loat、bool和string。

变量声明一般有两种。

  • 第一种是:var name type=name。可以自动去推导变量的类型。
  • 第二种是:name=value。
func main() {

   var a = "initial"

   var b, c int = 1, 2

   var d = true

   var e float64

   f := float32(e)

   g := a + "foo"
   fmt.Println(a, b, c, d, e, f) // initial 1 2 true 0 0
   fmt.Println(g)                // initialapple

   const s string = "constant"
   const h = 500000000
   const i = 3e20 / h
   fmt.Println(s, h, i, math.Sin(h), math.Sin(i))
}

3.GO语言基础语法

1、GO语言的if与else

GO语言的if与else和C++的相似,但是GO语言的if与else的判断条件是没有()的,但是要有{}

2、GO中的循环

在GO中只有for循环,for循环没有()有{},赋值有一点点不一样。

for i := 1; i < 10; i ++ {
    fmt.Println("yes")
}

还可以什么判断条件都不写:

for {
    fmt.Println("yes")
}

3、GO中的switch

GO的switch,case不用加break可以自行跳出,而不会一直往下执行。

a := 3
switch a {
case 1:
   fmt.Println("one")
case 2:
   fmt.Println("two")
case 3:
   fmt.Println("three")
case 4, 5:
   fmt.Println("four or five")
default:
   fmt.Println("other")
}

4、数组

数组的长度是固定的

5、切片

s := make([]string, 3) 后续使用append添加元素,比数组方便

三、个人总结

第一次认识GO语言,老师第一节讲的很清晰,所有语言都是从helloworld开始,数据类型,基本语法,函数等等。第二节的实战例子虽然有代码,但是运行起来并不是那么顺利,总是有错误,但是起码要运行成功了才能好好继续上课。期待明天的课程