Golang学习笔记(2)---go语言基本类型

beyondlee2011 · · 1037 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

布尔型:bool

长度1字节

取值范围:true,false

注意:不可以用数字代表true或false


整型:Int

根据平台可能为32为或64位

聽8位整型:int8/uint8

长度:1字节

取值范围:-127~127,0~255

byte 字节型 聽其实就是 uint8的别名

聽16位整型:int16/uint16

长度:2字节

取值范围:-32768~32768,0~65535

聽32位整型:int32/uint32

长度:4字节

rune就是int32的别名

聽浮点型:float32/float64

长度:4字节/8字节

小数位:float32精确到小数点后7位,float64精确到小数点后15位

保存指针的uintptr类型,根据平台来分为32位或64位


其他类型:

array 聽 struct 聽 string


引用类型:

map 聽slice 聽chan(并发会使用到)

接口类型:interface

函数类型:func 聽 (因为函数可以复制给变量的)

类型零值:

聽聽聽聽零值并不等于空置,而是当变量被声明为某种类型后的默认值,通常情况下值的类型都为0,bool为 false,string为空字符串,数组的话和数组类型的零值保持一致 [2]int,则数组的初始值为[0 0]


类型别名:

聽聽聽聽使用type对类型进行别名 聽

wKioL1fOX6-yol1mAAAvY8XDU18478.png-wh_50

聽聽聽聽这样是可以的,但是不建议这样使用,type定义一些其他的别名(type byte64 聽int64),来使代码可读性更强

聽聽聽聽type定义的类型的别名,其实只是和该类型的结构相同,所以要做类型转换的时候,还是需要进行显式转换的,而byte rune 的确是uint8 int32,的别名,可以进行相互转换

聽聽聽聽可以进行转换:

wKiom1fOX6_ghspOAAA5Y5TkGtk677.png-wh_50

聽这样是无法进行转换的

wKioL1fOX7DDBSldAABL_Wmov2E260.png-wh_50

聽聽必须做显式的类型转换才可以

wKiom1fOX7CgZRspAAAYXXyANL4891.png-wh_50


本文出自 “你的黑夜” 博客,请务必保留此出处http://lixin15.blog.51cto.com/3845983/1846831


有疑问加站长微信联系(非本文作者)

本文来自:51CTO博客

感谢作者:beyondlee2011

查看原文:Golang学习笔记(2)---go语言基本类型

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1037 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传