go语言入门知识点
day 1
- 大神开发
- google线上使用
- C过时,早晚淘汰
- C编译太慢,需要一门低级语言代替它
- GO吸收了包括C和JAVA等在内的语言的优势
- 自行解决内存问题
- 统一自动格式化gofmt
- 运行前编译
- 效率比脚本需要高的多
- 可以调用c语言中的方法
- 关键字少,代码简洁
- 语句不用分号结束,多个语句放在一行才要用分号
- 其实编译时自行加上分号
- 包的引入
- 包的后缀pkg
- go文件的后缀go
- 编译后可执行文件的后缀a
- 在第一行申明文件的pkg
- 一个go文件只能属于一个pkg,一个pkg可以包含多个go文件
- 有且必须要有有一个main包
- 包的依赖关系影响编译的顺序
- import 多个包时可以将多个包名放在数组中
- 以大写字母打头的标识符类似public,以小写字母打头的标识符类似private
- import 一个包不使用它会报错
- go中没有不必要的代码
- 和C一样有个main函数,入口执行函数
- main包中没有main函数会报错
- main函数没有参数和返回值,有就报错
- 函数的开始花括号必须和函数申明在同一行,否则报错
- 而函数的结束化括号必须紧接函数体
- 上面两句总结成一句话:跟psr一样
- 返回值列表在参数列表后面
- 大写字母开头的方法名遵循Pascal命名法
- 输出方法print,println
- 程序正常结束返回0,程序异常终止返回1
- 注释有通用的单行注释和多行注释
- 注释可以通过godoc文档化
- 方法的注释应该以方法名开头
- 结构化类型的默认值是nil,跟Object-C一致
- go没有类型继承
- type关键字自定义类型
- 函数可以有多个返回值,类似js,lua
- 类型可以强制转换
const
定义常量- 变量的类型可以不指定,会自动判断
day 2
$GOROOT
是安装目录,$GOPATH
是项目目录iota
用于常量定义,初始值为0,可以自增- go特有的:申明变量时将变量的类型放在变量名的右边
- 可以根据变量的值推断变量的类型
day 3
- 格式化输出时%v使用类型的默认输出格式
- 与Printf相比,Sprintf会将格式化后的变量作为返回值
变量初始化的三种形式
123var a int = 30;//int 可省略,可自动识别var a = 30;a := 30;:=的初始化方式只能用于方法体内
本文作者 : 小凡
原文链接 : https://16bh.github.io/2017/04/11/go-study-note/
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!