golang基础学习

类型表格

unsafe.Sizeof(x)  x 变量占用的字节数

1字节 = 8
类型符号占用存储空间表述范围备注
int81字节-128~127
int162字节-215~215-1
int324字节-231~231-1
int648字节-263~263-1
uint81字节0~2^8-1
uint162字节0~2^16-1
uint324字节0~2^32-1
uint648字节0~2^64-1
rune与int32一样-221~231-1等价int32,标识一个Unicode码
byte与uint8等价0~255当要存储字符时选用byte
单精度float324字节-3.403E38~3.403E38
双精度float648字节-1.798E308~1.798E308float 默认类型

浮点类型

浮点数=  符号位+指数位+尾数位
尾数部分可能丢失,造成精度损失,float64的精度比float32要准确

字符类型

无专门字符类型,需要存储单个字符(字母),一般用byte来保存

字符串就是一串固定长度的字符连接起来的字符序列,go的字符串是由单个字节连接起来的


字符类型用单引号括起来的单个字符
允许使用转义字符'\'来将其后的字符转变为特殊字符的常量,例:var c3 char = '\n'
字符使用utf-8编码,
字符的本质是一个整数,直接输出时,是该字符对应的的utf-8编码的值
可以给某个变量赋值一个数字,然后按格式化输出时%c ,会输出对应的unicode字符
字符类型是可以运算的

字符串

双引号,会识别转义字符
反引号,以字符串的原生形式输出,包括换行和特殊符号
拼接方式 +

基本类型的默认值

数据类型默认值
整型0
浮点型0
字符串“”
布尔类型false

基本类型的相互转换

表达式T(v) 将值v转换为类型T
T:即常见的数据类型:int8,int16,int32,float32,float64
v:就是需要转换的变量

1.1 数据类型转换注意事项

1 转换范围可以从范围小到范围大,也可以从范围大到范围小

2 被转换的是变量存储的数据(即值),变量本身的数据类型并没有变化

3 转换中,如果将范围大转换范围小的,编译不会报错,只是转换的结果按移除处理

基本数据类型和string转换

程序开发中,经常将基本数据类型转成string

方式1 fmt.Sprintf("%参数",表达式),参数需要和表达式的数据类型相匹配,fmt.Sprintf() 会返回转换后的字符串

方式2 使用strconv包的函数
 strconv.FormatInt(),strconv.FormatFloat(),strconv.FormatBool()



string类型转基本数据类型
使用strconv包的函数
   strconv.ParseBool(),strconv.ParseFloat(),strconv.ParseInt()

指针

1 基本数据类型:变量存的就是值,值类型
2 获取变量的地址,用&3 指针类型:指针变量存的是一个地址,这个地址指向的空间存的才是值 var ptr *int = &num
4 获取指针类型所指向的值,使用:*,比如:var ptr *int  使用*ptr 获取ptr指向的值
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值