Go语言基础 | 青训营笔记

78 阅读2分钟

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

一、本堂课重点内容

  • Go 语言的优点
  • Go 语言的基本语法

二、详细知识点介绍

1、Go语言的优点

1)高性能

Go的性能与java 和 C++ 相似,Go的运行速度通常是Python的30倍,虽然Go的可执行文件的运行速度不如 C 但是对于绝大多数的情况而言,这些差异可以忽略不计。

2)Go语言小而简单

Go 富有表现力、简洁、干净且高效……Go 可以快速编译成机器码,同时还具有垃圾收集的便利性及运行时反射的能力。这是一种快速的、静态类型的编译语言,但它感觉起来就像是一种动态类型的解释语言。

对于新手而言,Go 语言简单,易学,代码更明确,Go 语言的标准库有很多的其他语言第三方库才能解决的问题(Json解析、http、time)

3)并发编程的支持

Go语言从基本层面支持了并发,不需要一个额外的库来支持,Go 中的并发是协程

3)跨平台

Go语言编译完成后生成的是.exe后缀的文件,可以直接双击运行,不像java需要jvm

2、Go 语言的基本语法

1)Hwllo World

import "fmt"
func main() {
   fmt.Println("Hello World")
}

2)变量声明

Go 提供了三种变量声明的方法

var a int
var b int = 10
c := 10

3)流程控制

  1. 单分支
a := 1
b := 2
if a > b {
    fmt.Println("a>b")
} else {
    fmt.Println("b>a")
}
  1. 多分支
    //Go里的循环自带 break
    num := 3
    switch num {
    case 1:
        fmt.Println("num=1")
    case 2:
        fmt.Println("num=2")
    case 3:
        fmt.Println("num=3")
    default:
        fmt.Print("没有条件成立")
    }
  1. 循环
//Go中循环只有 for for的用法有三种
//1、

for [表达式] {
    //此处省略200字
}
//2、
for i:=0; i < 10; i += 1 {

    //此处省略200字
}
//3、
var nums []int

for index,value := nums {

}

4)运算

Go 的运算符号和java、C语言来比,没有 a++这样的语法,其他都一样。

三、个人总结

对于有其他语言基础的同学来说,Go 的学习代价是相当低的,在一堂课的时间,我已经基本掌握了Go的基本语法,刚开始可能会觉得 Go 的语法有些别扭,比如在变量名后面声明变量类型,while循环的删除等等,但是 Go 去掉了这些语法也保证了代码的一致性,使得不同的人在写相同的功能的时候代码可能会非常的相似。