Go学习笔记-基本数据类型 | 青训营笔记

93 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第2天

基础数据类型

Go语言的数据类型主要有四种:基础类型、复合类型、引用类型和接口类型

基础类型主要包括数值、字符串和布尔型

数值类型主要包括整数、浮点数和复数

整形

int8int16int32int64uint8uint16uint32uint64数字代表多少bit大小的有符号或无符号整形

intuint:一般所使用的有符号和无符号整形

还有无符号整形uintptr,没有具体的bit大小但可容纳指针

浮点数

float32 可以提供大约6个十进制数的精度float64大约能提供15个十进制数的精度

复数

complex64complex128两种

函数complex()用于构建复数,传入两个参数,第一个参数是复数实部,第二个参数是复数虚部

函数realimag分别返回复数的实部和虚部

一个复数常量可以与普通数值常量相加,例如1+1i,因此构建复数会更加简单

math/cmplx提供了处理复数的许多函数

布尔型

&&优先级比||高

字符串

  • 可以使用len()来获取字符串的字节数目
  • 字符串可以通过索引访问每个字符
  • 字符串支持切片操作,str[i:j]生成原字符串从索引i开始但不包括索引j的子字符串
  • 可以使用 + 拼接字符串,但字符串不支持修改

字符串面值

  • 将内容放在双引号内
  • 也可以使用反引号;反引号没有转义操作
  • 转义字符

    • \a 响铃
    • \b 退格
    • \f 换页
    • \n 换行
    • \r 回车
    • \t 制表符
    • \v 垂直制表符
    • ' 单引号(只用在 ''' 形式的rune符号面值中)
    • " 双引号(只用在 "..." 形式的字符串面值中)
    • \ 反斜杠

常量

常量用const定义,值不可改变