Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有切片、结构体、函数、map、通道(channel)等。
Go 语言的基本类型和其他语言大同小异。
1. 整型
整型可以分成以下两个大类:
-
按长度分为:
int8
、int16
、int32
、int64
-
对应的无符号整型:
uint8
、uint16
、uint32
、uint64
其中,uint8
就是我们熟知的 byte
型.
2. 浮点型
Go语言支持两种浮点型数:
float32
、float64
.
注意:没有float
Go语言的浮点型默认声明为 float64
.
3. 复数
复数的默认类型是complex128
(64位实数 + 64位虚数)
还有一种是complex64
(32位实数 + 32位虚数)
var c1 complex
c1 = 1 + 2i
var c2 complex64
c2 = 2 + 3i
var c3 complex128
c3 = 3 + 4i
fmt.Println(c1)
fmt.Println(c2)
fmt.Println(c3)
4. 布尔型
布尔型数据只有 true
(真)和 false
(假)两个值。默认为flase
。
注,在Go语言中:
1、布尔类型变量的默认值为 false
2、true
和 false
均为小写
3、不允许将整型强制转换为布尔型
4、布尔类型无法参与数值运算, 也无法与其他类型进行转换
5. 字符串
字符串的两种表示形式:
-
双引号(" "),会识别转义字符
-
反引号,不会识别转义字符。以字符串的原生形式输出,包括换行和特殊字符。
s1 = "hello"
5.1 字符串常见转义符
转义符 | 含义 |
---|---|
\r | 回车符(返回行首) |
\n | 换行符 |
\t | 制表符 |
’ | 单引号 |
" | 双引号 |
\ | 反斜杠 |
打印Windows平台下的一个文件路径
package main
import "fmt"
func main() {
fmt.Println("str := \"c:\\code\\go\\go.exe\"")
}
5.2 反引号定义多行字符串
const s = ` 第一行 第二行 第三行 \r\n `
fmt.Println(s)
代码运行结果:
第一行
第二行
第三行
\r\n
6. 字符
字符串中的每一个元素叫做字符
,在遍历或者单个获取字符串元素时可以获得字符。
字符用单引号
表示.
Go语言的字符有以下两种:
- 一种是 uint8 类型,或者叫 byte 型,代表了 ASCII码的一个字符。
- 另一种是 rune 类型,代表一个 UTF-8 字符。当需要处理中文、日文或者其他复合字符时,则需要用到 rune 类型。rune 类型实际是一个 int32。
李培冠博客
lpgit.com