1. 值类型
1.int:
golang中int即整形,是指整数,其中包括正数和负数,是没有小数部分或小数点的数字,整型可以是十进制、八进制或十六进制,但默认为十进制,其取值范围是负2147483648到2147483647之间。
2.float:
golang中float即浮点型,是指可容纳包含小数或小数部分的数字,有正数和负数之分,浮点型的的变量可以用来存储整数和小数,且精确度比整型数据类型高,其取值范围是1.8E-308到1.8E+308之间。
3.bool:
golang中bool即布尔型,只有两个值,一是TRUE,当出现成功的事件将返回true,而是FALSE,当出现不成功的事件则返回false,布尔型中出现NULL值也将返回false。
4.string:
golang中string即字符串型,是一个内置类型,其默认值为"",golang中string的长度的固定的,其底层结构len中记录了当前string的长度,且不支持扩容。
5.array:
golang中array即数组,是具有相同唯一类型的一组已编号且长度固定的数据项序列,其类型可以是整型、字符串或自定义类型,array中的元素可以通过索引读取,且索引从0开始。
6.struct:
golang中struct即结构体,是指用户自定义的类型,其代表若干字段的集合,常用于描述一个实体对象,使用golang中面向对象编程的基础类型。
2.引用类型
1.map:
golang中map是一种无序的、键值对的集合,其是通过key检索数据,且key类似于索引,指向数据的值,golang中常使用hash表来实现map。
2.pointers:
golang中golang是指计算机内存中变量所在的内存地址,使用pointers可以节省内存,但golang中pointers不能进行偏移和运算,只能读取指针的位置。
3.slice:
golang中slice是对数组的抽象,相对于数组,slice的长度是不固定的,可以追加元素,且在追加元素时可以增大slice的容量。
4.channel:
golang中channel是指管道,是一种用于实现并行计算方程间通信的类型,允许线程间通过发送和接收来传输指定类型的数据,初始值为nil。
5.interface:
golang中interface是指接口,是一组方法签名的集合,可以使用接口来识别一个对象够进行的操作。
6.function:
golang中function是指函数,function不支持嵌套、重载和默认参数,但无需声明原型,常使用func关键字定义函数。
转载请注明:liutianfeng.com » golang的数据类型-值类型、引用类型