Go 笔记(一)

Go 语言之旅

golang 从main包开始

导包使用import 关键字

  • 单个导入
  • 多个导入

导出名,在别的package下调用,使用大写表示导出名

函数

  • func func_name(param1, param2 Type) Type

  • 函数名,参数类型,返回值类型

  • 参数类型相同时,可以只写一个参数类型,编译器代做推断,果然是大道至简

  • 可以返回多个值

  • 命名返回值,返回值可以直接在函数定义的时间进行命名

  • 变量,使用var 声明

  • 变量初始化,如果初始值存在,可以省略类型不写,大道至简,golang来帮你实现

  • 短变量声明 number := 100 不能在函数外使用

  • 基本数据类型

    • bool
    • string
    • int
    • int8
    • int16
    • int32
    • int64
    • unit
    • unit8
    • unit16
    • unit32
    • unit64
    • uintptr
    • byte
    • rune
    • float32
    • float64
    • complex64
    • complex128
  • 类型转换

    var i int = 42
    var f float64  = float64()
    var u uint = uint(f)
    
    //或者
    i := 42
    f := float64(i
    
  • const 关键字

控制结构

  • for 循环

    package main
    
    import "fmt"
    
    func main() {
    	sum := 0
    	for i := 0; i < 10; i++ {
    		sum += i
    	}
    	fmt.Println(sum)
    }
    // "while"
    package main
    
    import "fmt"
    
    func main() {
    	sum := 1
    	for sum < 1000 {
    		sum += sum
    	}
    	fmt.Println(sum)
    }
    
  • for{} 无线循环

  • if condition {}

    • else
  • switch: go自动提供了每个case 后面的break

  • 没有条件的 switch 同 switch true 一样

  • defer 语句会将函数推迟到外层函数返回之后执行

  • 推迟的函数调用会被压入一个栈中。当外层函数返回时,被推迟的函数会按照后进先出的顺序调用

posted @ 2021-08-24 21:44  KiritoUzumaki  阅读(26)  评论(0)    收藏  举报