一、规范
main 函数为入口
严格区分大小写
不需要加分号
一行只写一条语句
定义的变量或者导入的包必须要用到,否则编译时会报错
左括号不能单独一行
逗号可以用来在换行时连接字符串
标识符由字母数字下划线组成,不能数字开头
变量名用驼峰法表示,如果首字母小写,只能本包访问,如果首字母大写可以被其他包访问。这个和其他编程语言有些不同。go语言没有 public,private等。
二、转义字符
三、注释
//
/**/
四、变量
1.指定变量类型,如果没赋值则自动默认值
2.自行推断
3.省略var的声明,注意该变量之前没有声明过
4.一次声明多个变量
(1)
(2)
(3)在函数外定义即全局变量
(4)全局变量可以不使用也不报错
5.退化赋值
6.常量
常量可以不使用也不报编译错误
7. 枚举 iota
五、数据类型
1.整数类型
(1)有符号
(2)无符号
(3)其他
(4)查看类型和字节数
2.浮点数
浮点数可能会有精度的损失
(1)固定范围,不受操作系统位数的影响
(2)默认为64位
(3)形式
(4)推荐使用float64
3.字符类型 char
(1)用单引号存字符
字符在 0-255 的ASCII 码之间 用 byte存放,超出用更大的数字类型存放。这一点的其他编程语言的写不同。
(2)go语言使用UTF-8编码,UTF-8中包含ASCII 码,且位置对应,英文一个字节,汉字三个字节
(3)字符类型的本质是数字。
4.bool
只有ture 和false,不能使用0
5.字符串
(1)字符串不能被修改
(2)反引号中的字符串会原样输出
(3)拼接时 加上要在换行的末尾
五、基本类型默认值
六、基本类型转换
(1)go不能自动转换
(2)转换语法:T (V) . T是类型,V是变量。
例:
(3)转后的数据改变了,但变量的数据类型不改变
(4)由高精度向低精度转换时,如果发生溢出,不会编译报错,但是会得到一个错误结果
七、格式化输出
%v 值的默认格式表示
%t 单词true或false
%d 表示为十进制
%b 表示为二进制
%s 直接输出字符串或者[]byte
%f 有小数部分但无指数部分,如123.456
更多: https://studygolang.com/pkgdoc -fmt
八、转字符串
(1)方法1
fmt.Sprintf() 方法
(2)方法2
strconv
int转string
九、string转基本
go函数能返回多个值,这个函数返回两个值, _ 代表忽略第二个值。