在 Go 语言中,数据类型是变量和常量的基础,定义了存储数据的方式以及可以对数据执行的操作。Go 语言支持多种基本数据类型,包括布尔型、整数型、浮点型和字符串。下面详细介绍这些基本数据类型及其用法。
布尔型数据类型用于表示 true
或 false
两个值。
package main
import "fmt"
func main() {
var b1 bool = true
var b2 bool = false
b3 := true // 类型推断
fmt.Println("b1:", b1)
fmt.Println("b2:", b2)
fmt.Println("b3:", b3)
}
布尔型支持常见的逻辑运算:
&&
逻辑与||
逻辑或!
逻辑非package main
import "fmt"
func main() {
b1 := true
b2 := false
fmt.Println("b1 && b2:", b1 && b2) // 输出: false
fmt.Println("b1 || b2:", b1 || b2) // 输出: true
fmt.Println("!b1:", !b1) // 输出: false
}
整数型数据类型用于表示整数,Go 语言提供多种整数类型,包括有符号和无符号类型。
int8
: 8 位有符号整数(-128 到 127)int16
: 16 位有符号整数(-32768 到 32767)int32
: 32 位有符号整数(-2147483648 到 2147483647)int64
: 64 位有符号整数(-9223372036854775808 到 9223372036854775807)uint8
: 8 位无符号整数(0 到 255)uint16
: 16 位无符号整数(0 到 65535)uint32
: 32 位无符号整数(0 到 4294967295)uint64
: 64 位无符号整数(0 到 18446744073709551615)package main
import "fmt"
func main() {
var i int = 42
var u uint = 42
i8 := int8(127) // 类型转换
u16 := uint16(65535)
fmt.Println("i:", i)
fmt.Println("u:", u)
fmt.Println("i8:", i8)
fmt.Println("u16:", u16)
}
浮点型数据类型用于表示带有小数部分的数字,Go 语言支持两种浮点类型:
float32
: 32 位浮点数float64
: 64 位浮点数package main
import "fmt"
func main() {
var f32 float32 = 3.14
var f64 float64 = 3.141592653589793
f := 2.71828 // 类型推断为 float64
fmt.Println("f32:", f32)
fmt.Println("f64:", f64)
fmt.Println("f:", f)
}
浮点型支持常见的算术运算:
+
加法-
减法*
乘法/
除法字符串数据类型用于表示一系列字符,Go 语言中的字符串是 Unicode 编码的,可以包含任何 Unicode 字符。
package main
import "fmt"
func main() {
var s1 string = "Hello, Go!"
s2 := "Hello, World!" // 类型推断
fmt.Println("s1:", s1)
fmt.Println("s2:", s2)
}
字符串支持多种操作:
len(s)
+
s[i]
s[start:end]
package main
import "fmt"
func main() {
s := "Hello, Go!"
fmt.Println("Length of s:", len(s))
fmt.Println("First character:", string(s[0]))
fmt.Println("Substring (0:5):", s[0:5])
s2 := s + " Welcome!"
fmt.Println("Concatenated string:", s2)
}
Go 语言提供了丰富的数据类型以满足不同场景的需求。理解和正确使用这些基本数据类型是编写高效 Go 程序的基础。通过掌握布尔型、整数型、浮点型和字符串的使用方法,可以灵活地处理各种数据操作需求。
原文链接:codingdict.net