Golang_1_概述

  • 书籍:
  • 环境:MacOS + Goland
  • 学习方式:看书、实现、记录Markdown

一、概述

1.1 特征

  • 语法简单:类C,简洁->Python
  • 并发模型:运行时用Goroutine运行一切,用协程的方式处理并发单元,运行时又作了深度优化;搭配channel,实现了CSP模型
  • 垃圾回收:
  • 静态链接:编译后一个可执行文件,无需附加仍何东西就能部署
  • 标准库:
  • 工具链:

1.2 简介

第一个Go程序

// test.go
package main

func main()  {
	print("hello world")
}
  1. .go为文件扩展名
  2. 不需要分号 ;
  3. 一定要有入口函数 main,无参数,==且必须放在main包中??==
  4. 删除未使用的导入,否则会报错
  5. test.gomain.go
    • test.go,里面写 package main,直接运行,控制台不输出,需要 go run test.go
    • main.go,里面写 package main,直接运行输出

变量

使用 var 定义变量,数据类型划分明确,适合跨平台。赋值的时候,var可以省略

// main.go
package main

func main()  {
	var x int32 // 不赋值的int默认值为0
	var s = "hello"
    y := 100
	println(x, s, y) // 输出输出 0 hello 100,再换行
    print(x, s, y) // 输出 0hello100,不换行
}
  • printprintln都可以同时输出多个变量
  • print不会同行加空格以及末尾换行
  • 变量定义了不使用也会报错
  • 结构体,用Table右对齐

分享: