美文网首页
golang小结 1

golang小结 1

作者: TimeMage | 来源:发表于2018-02-02 11:19 被阅读11次

变量定义

  • var x int //变量类型后置,初始化为默认值
  • var x = 1 //类型自动推导
  • x := 1 //只适用于局部变量
  • 多变量定义
    • x, y := 1, "abc"//若y已定义,则只给x定义,y进行赋值,必须含有未定义元素

    • var x, y = 1, "abc"//不得多次定义

    • 使用括号

      var (
          x int
          y = 1
      )
      

控制流

  • 条件语句

    if x>1 {
        //...
    } else {
        //..
    }
    
  • 循环

    for i:=0; i<n; i++ {
        //...
    }
    for i, v = range arr {
        //...
    }
    for i<n {
        //...
    }
    

函数

函数定义

  • 返回值放后面, 参数类型可以简写

    func foo(x int, y, z int) (int, int, int) {
        return y, x, z
    }
    
  • 多值函数的返回值可直接作为参数

      foo(foo(1,2,3))
    
  • 函数返回值可以命名

    func foo(a int) (b int) {
        b=a
        return
    }
    
  • 不必要的多值函数返回值可用 _ 接收

  • 匿名函数

    z := func(x int) int {
        return x + 1
    }
    z(0)
    

包管理

  • 导入包

    import (
        "fmt"
        "os"
    )
    
  • 调用包中的函数

      fmt.Println(1,2)
    

    注:函数首字母被大写的才能被其他包调用,可以在函数名上方写文档

  • main 包

      package main
    

    只有包名为main的才能编译成程序,其他名称的包只能test

  • 引用第三方包

    • 在%GOPATH%\src上新建包文件夹gosort
    • 编写gosort代码
    • 在要使用包的程序中,import然后调用即可

    同一文件夹下,只能声明一个包

    推荐将代码编写在%GOPATH%\src目录下


顺便说一下vscode的markdownlint 真好用

相关文章

网友评论

      本文标题:golang小结 1

      本文链接:https://www.haomeiwen.com/subject/gxiszxtx.html