美文网首页
GO基本数据类型

GO基本数据类型

作者: love_a_pig | 来源:发表于2019-03-26 15:56 被阅读0次
go基本数据类型

        go语言中基本数据类型大体可以分为:整型、浮点型、布尔型、字符串。

        首先看整型,在go语言中整型的小分类比较多有(int、int8、int16、int32、int64)上面表示的是有符号的整型,对应的还有无符号的整型(uint、uint8、uint16、uint32、uint64)有符号和无符号的类型之间的区别是有符号的整型取值的区间有正有负,而无符号的类型取值的区间只有正数,例如uint8的取值区间为0-225,而225怎么算出来的呢,这里的int8表示的是一个字节也就是8bit,用二进制来表示就是00000000~11111111换算成十进制就是0~225那么这是无符号类型的取值范围,如果是有符号的int8的话就是-128~127,我们可以这么算在计算机中表示有符号的类型那么最高的位数将用来表示符号0代表正数1代表负数所以少了一位最高位,他们的取值范围换算成十进制就是-128~127,至于后面的16,32,64都是类似的并且取值范围在源码中都有记录。(整型当中有两个很特殊的存在一个是int32还有一个是uint8,在java语言中的chat字符型在go语言中用rune表示并且rune和int32是完全等同的rune就是int32的一个别名,取两个名字只是为了来区分字符和32位整型,uint8的还有一个别名就是我们很熟悉的byte,在所有方面都等同于uint8,按照惯例,用于区分字节值和8位无符号整数值。)

1.1

        如果我们定义一个整型不给它指定决定的类型的话他默认就是int类型,在源码解释中int类型代表大小至少大于int32的类型但是和int32位不同的类型如图1.1,无符号uint和int差不多就在于符号的区别。

        然后就是浮点型,浮点型的话就没有整型那么多的分类了,在go中浮点型只有两种一直是float32还有就是float64,如果我们不指明类型的话类型的选择就和你的机器类型有关如果你是32位机就是float32,64位机的话就是float64,笔者用的就是64位机默认的话定义一个浮点数给它指定的类型就是float64如果你可以预知自己不需要那么大的空间来存储也可以显示的指定类型为float32可以节省一半的内存。

        接下来布尔类型,和传统的很多编程语言一样go语言中布尔类型只有两个值ture或false用法大同小异,没有什么可以记录的。

        最后的话就是我们使用频率最高的类型之一的字符串类型了,在go语言中的字符串类型和java当中基本没有区别。

        在最后的最后补充一个小笔记就是上面提到的计算机中表示一个负数,是把最高位用来表示正负,以8位2进制为例1(00000001)推理得出-1的话就是(100000001)但是计算的话就会出问题-1+1在十进制中等于0但是按照这个规则用2进制的数进行计算相加的话就是-2,所以就有了补码-1这样的有符号数不用10000001来表示而是用它的补码来表示(补码的求法:向我们上面按照之前的规则最高位代表符号表示-1的二进制数值10000001这是-1的原码,最高位表示符号的不动后面所有位上面的数取反然后加1就是11111111就是-1的补码)然后用00000001+11111111=1000000000由于是8位的数去掉最高位就是00000000等于0

相关文章

  • Go基本数据类型_003

    Go基本数据类型 Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函...

  • 0.Go语言·基本数据类型

    基本数据类型 main.go DAY01 main.go DAY02 main.go DAY03 main.go ...

  • Go语言标准库之JSON编解码

    Go语言标准库之JSON编解码 基本的类型 Go语言中的数据类型和JSON的数据类型的关系 bool -> JSO...

  • Go语言标准库之JSON编解码

    Go语言标准库之JSON编解码 基本的类型 Go语言中的数据类型和JSON的数据类型的关系 bool -> JSO...

  • 04 Golang数据类型

    分类 Go语言中的数据类型分为:基本数据类型和复合数据类型 基本数据类型 整型、浮点型、布尔型、字符串 复合数据类...

  • 《Go语言四十二章经》第二章 数据类型

    作者:李骁 在 Go 语言中,数据类型可用于参数和变量声明。 2.1 基本数据类型 Go 语言按类别有以下几种数据...

  • Go-Struct

    自定义类型 类型别名 go 结构体 Go语言提供了一种自定义数据类型,可以封装多个基本数据类型,这种数据类型叫结构...

  • Go语言复合数据类型之数组

    在学习复合数据类型之前,我们得知道复合数据类型是由基本数据类型组合而成,和Java一样,Go语言也有基本数据类型,...

  • Go的基础知识

    go语言学习笔记 一. 基本结构,基本数据类型 1. 文件名、关键字与标识符 Go 的源文件以 .go 为后缀名存...

  • 04-Go语言常量和变量

    Go数据类型 C语言的数据类型image GO语言数据类型image GO数据类型占用的内存空间image 注意点...

网友评论

      本文标题:GO基本数据类型

      本文链接:https://www.haomeiwen.com/subject/cmvgvqtx.html