Go语言基础总结
2019-04-23 12:21:15 92 举报
AI智能生成
Go语言学习基础总结
作者其他创作
大纲/内容
1) 指定变量类型,声明后若不赋值,使用默认值
2) 根据值自行判定变量类型(类型推导)
5) 一次性声明多个全局变量【在 go 中函数外部定义变量就是全局变量】
6) 数据值可以在同一类型范围内不断变化(重点)
7) 变量在同一个作用域(在一个函数或者在代码块)内不能重名
8) 变量=变量名+值+数据类型,这一点请大家注意,变量的三要素
变量的三种方式
1) 当左右两边都是数值型时,则做加法运算
2) 当左右两边都是字符串,则做字符串拼接
程序中 +号的使用
数据类型基本介绍
1) Golang 的整型默认声明为 int 型
2) 查看某个变量的字节大小和数据类型 (使用较多)
3) Golang程序中整型变量在使用时,遵守保小不保大的原则
整数类型
2) Golang 的浮点型默认声明为 float64 类型。
3) 浮点型常量有两种表示形式十进制数形式:如:5.12 .512 (必须有小数点) 科学计数法形式:如:5.1234e2 = 5.12 * 10 的 2 次方 5.12E-2 = 5.12/10 的 2 次方
4) 通常情况下,应该使用 float64 ,因为它比 float32 更精确。[开发中,推荐使用 float64]
小数类型/浮点型
Go语言的编码都统一成了utf-8。非常的方便,很统一,再也没有编码乱码的困扰了
字符类型
1) 布尔类型也叫 bool 类型,bool 类型数据只允许取值 true 和 false
2) bool类型占1个字节。
3) bool 类型适于逻辑运算,一般用于程序流程控制
布尔类型
2) 字符串一旦赋值了,字符串就不能修改了:在 Go 中字符串是不可变的
4) 字符串拼接方式
5) 当一行字符串太长时,需要使用到多行字符串,可以如上处理
string类型
1) Go中,数据类型的转换可以是从表示范围小-->表示范围大,也可以范围大--->范围小
2) 被转换的是变量存储的数据(即值),变量本身的数据类型并没有变化!
3) 在转换中,比如将 int64 转成 int8 【-128---127】 ,编译时不会报错,只是转换的结果是按 溢出处理,和我们希望的结果不一样。 因此在转换时,需要考虑范围.
基本数据类型的相互转换
方式 1:fmt.Sprintf(\"%参数\
方式 2:使用 strconv 包的函数
基本类型转 string 类型
在将 String 类型转成 基本数据类型时,要确保 String 类型能够转成有效的数据,比如 我们可以 把 \"123\
string 类型转基本数据类型
基本数据类型和 string 的转换
指针
变量
1) Go源文件以\"go\"为扩展名
2) Go应用程序的执行入口是main()函数。
3) Go语言严格区分大小写。
4) Go方法由一条条语句构成,每个语句后不需要分号(Go语言会在每行后自动加分号)
5) Go编译器是一行行进行编译的,因此我们一行就写一条语句,否则报错。
6) go语言定义的变量或者import的包如果没有使用到,代码不能编译通过。
7) 大括号都是成对出现的,缺一不可。
Go程序开发注意事项
区块链研发
Go服务器端/游戏软件工程师
Golang分布式/云计算软件工程师
学习方向
1) 如果是对源码编译后,再执行,Go 的执行流程如上图
2) 如果是对源码直接 执行 go run 源码,Go 的执行流程如下图
先编译生成了可执行文件,那么我们可以将该可执行文件拷贝到没有 go 开发环境的机器上,仍然可以运行
是直接 go run go 源代码,那么如果要在另外一个机器上这么运行,也需要 go 开发环境,否则无法执行。
在编译时,编译器会将程序运行依赖的库文件包含在可执行文件中,所以,可执行文件变大了很多。
两种执行流程的方式区别
Golang 执行流程分析
1.继承C语言理念
2.引入包概念
3.垃圾回收机制
3) 基于CPS并发模型实现
4.天然并发(重要)
5.管道通信
6.函数返回多值
切片slice
延时执行defer
7.新的创新
Golang语言特点
Go语言基础总结
0 条评论
回复 删除
下一页