Day02

来源:数据类型、关键字、标识符

关键字

Go语言中有25个关键字:

    break        default      func         interface    select
    case         defer        go           map          struct
    chan         else         goto         package      switch
    const        fallthrough  if           range        type
    continue     for          import       return       var

此外,Go语言中还有37个保留字。

    Constants:    true  false  iota  nil

        Types:    int  int8  int16  int32  int64  
                  uint  uint8  uint16  uint32  uint64  uintptr  
                  float32  float64  complex128  complex64   
                  bool  byte  rune  string  error   

    Functions:   make  len  cap  new  append  copy  close  delete
                 complex  real  imag
                 panic  recover

标识符

在编程语言中标识符就是程序员定义的具有特殊意义的词,比如变量名、常量名、函数名等等。 Go语言中标识符由字母数字和_(下划线)组成,并且只能以字母和_开头。 举几个例子:abc, _, _123, a123

数据类型

按类别
  • 布尔型:只可以是常量 true 或者 false。
  • 数字类型:整型和浮点型
  • 位的运算采用补码字符串类型:字符串就是一串固定长度的字符连接起来的字符序列,Go 的字符串是由单个字节连接起来。
  • Go 语言的字符串的字节使用 UTF-8 编码标识 Unicode 文本
  • 复数:complex128(64 位实数和虚数)和 complex64(32 位实数和虚数),其中 complex128 为复数的默认类型。
派生类型
  • 指针类型(Pointer)
  • 数组类型
  • 结构化类型(struct)
  • Channel 类型
  • 函数类型
  • 切片类型
  • 接口类型(interface)
  • Map 类型
基于架构
大概 类型和描述
200 uint8 无符号 8 位整型 (0 到 255)
60k uint16 无符号 16 位整型 (0 到 65535)
4b uint32 无符号 32 位整型 (0 到 4294967295)
1.8e19 uint64 无符号 64 位整型 (0 到 18,446,744,073,709,551,615)
5 int8 有符号 8 位整型 (-128 到 127)
6 int16 有符号 16 位整型 (-32768 到 32767)
7 int32 有符号 32 位整型 (-2147483648 到 2147483647)
8 int64 有符号 64 位整型 (-9223372036854775808 到 9223372036854775807)
3. 浮点型
序号 类型和描述
1 float32 IEEE-754 32位浮点型数
2 float64 IEEE-754 64位浮点型数
3 complex64 32 位实数和虚数
4 complex128 64 位实数和虚数
其他:
序号 类型和描述
1 byte 类似 uint8
2 rune 类似 int32
3 uint 32 或 64 位
4 int 与 uint 一样大小
5 uintptr 无符号整型,用于存放一个指针
  1. 表示 Unicode 字符的 rune 类型和 int32 类型是等价的,通常用于表示一个 Unicode 码点,是等价的。
  2. byte 和 uint8 也是等价类型,byte 类型一般用于强调数值是一个原始的数据而不是一个小的整数。
  3. 无符号的整数类型 uintptr,它没有指定具体的 bit 大小但是足以容纳指针。只有在底层编程时才需要,特别是Go语言和C语言函数库或操作系统接口相交互的地方
  4. 有符号整数采用 2 的补码形式表示,也就是最高 bit 位用来表示符号位,一个 n-bit 的有符号数的取值范围是从 -2(n-1) 到 2(n-1)-1。无符号整数的所有 bit 位都用于表示非负数,取值范围是 0 到 2n-1。
  5. 常量 math.MaxFloat32 表示 float32 能取到的最大数值,大约是 3.4e38。
  6. 常量 math.MaxFloat64 表示 float64 能取到的最大数值,大约是 1.8e308。
  7. float32 和 float64 能表示的最小值分别为 1.4e-45 和 4.9e-324。
  8. 浮点数在声明的时候可以只写整数部分或者小数部分
  9. 很小或很大的数最好用科学计数法书写,通过 e 或 E 来指定指数部分
const Avogadro = 6.02214129e23  // 阿伏伽德罗常数
const Planck   = 6.62606957e-34 // 普朗克常数
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容