Golang中变量的数据类型

文章详细介绍了Golang中的基本数据类型,包括整型(有符号和无符号)、浮点型、字符型(使用byte表示)和布尔型,强调了数据类型的默认值、存储方式以及使用注意事项。此外,还概述了派生数据类型,如指针、数组、结构体、管道、函数、切片、接口和map,特别是切片作为动态数组的特点。
摘要由CSDN通过智能技术生成

一.基本数据类型

 1.数值型

    1)整数类型(int,int8,int16,int32,int64,until,until8,until16,until32,until64,byte)

       简单来说就是整数值,默认值为0

       细节:1.有符号和无符号,int和until的大小和系统有关

                  2.Golang的整型默认声明为int型

                  3.如何查看某个变量的字节大小和数据类型

 

                  4.Golang程序中整型变量在使用时,遵循保小不保大的原则。即:在保证程序正确运行下,尽量使用占用空间小的数据类型

    2)浮点类型(float32,float64)

       单精度占四个字节,双精度占八个字节

      简单来说就是小数 默认值为0

      说明:

                    1.浮点数在机器中存放形式的简单说明,浮点数=符号位+指数位+尾数位

 2.字符型

      Golang中没有专门的字符型,使用byte来保存单个字母字符,Go的字符串是由单个字节连接起来的,字符串是由字节组成,默认值为""

说明 :1.如果我们保存的字符在ASCLL表的,比如[0-1,a-z,A-Z]直接可以保存到byte

            2.如果我们保存的字符对应码值大于255,这时我们可以考虑使用int类型保存

            3.如果我们需要安装字符的方式输出,这时我们需要格式化输出。

细节:1.字符常量是用单引号('')括起来的单个字符。

           2.Go中允许使用转义字符'\'来将其后的字符转变为特殊字符型常量,例如'\n'表示换行符

           3.Go语言的字符使用UTF-8编码

           4.在Go中,字符的本质是一个整数,直接输出时,是该字符对应的UTF-8编码的码值

           5.可以直接给某个变量赋一个数字然后格式化输出时%C会输出该数字对应的Unicode字符

           6.字符类型是可以进行运算的,相当于一个整数,因为它都对应有Unicode码

            字符型存储到计算机中

             存储:字符-->对应码值--->二进制----->存储

             读取:二进制-->码值---->字符---->读取

 3.布尔型(bool)

    1.bool类型数据只允许取值true和false,不可以0或非0的整数替代false和true

    2.bool类型占1个字节

    3.Boolean类型适于逻辑运算,一般用于程序流程控制,if条件控制语句,for循环控制语句

      默认值为false

 4.字符串(String)

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

      

     细节:1.Go语言的字符串的字节使用UTF-8编码标识Unicode文本

             2.字符串一旦赋值了,字符串就不能修改了

             3.字符串的两种表示形式

                1).双引号,会识别转义字符

                2).反引号,以字符串的原生形式输出,包括换行和特殊字符,可以实现防止攻击,输出源代码的效果

 

 

      4.字符串拼接方式

二.派生/复杂数据类型

 1.指针(pointer)

 2.数组

         数组可以存放多个同一类型数据。数组也是一种数据类型,在Go中,数组是值类型

 3.结构体(struct)

 4.管道(Channel)

 5.函数(也是一种类型)

 6.切片(slice)

        (1) 切片是一个数组的引用,因此切片是引用类型,在进行传递时,遵守引用传递的机制。

        (2) 切片的使用和数组类似,遍历切片、访问切片的元素和求切片长度len(slice)都一样

        (3)切片的长度是可以变化的,因此切片是一个可以动态变化的数组。

 7.接口(interface)

 8.map

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老实憨厚的腾锅锅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值