Go 语言数据类型说明

Go 语言提供了以下基本数据类型:

  1. bool:表示布尔值,只能是 true 或 false。

  2. 数值类型:

    • 整数类型:int8、int16、int32、int64、int(根据平台位数选择)、uint8、uint16、uint32、uint64、uint(根据平台位数选择)。
    • 浮点数类型:float32、float64。
    • 复数类型:complex64、complex128。
  3. 字符串类型:用于表示文本数据,使用双引号或反引号括起来。

  4. 派生类型:

    • 指针类型(Pointer):表示变量的内存地址。
    • 数组类型(Array):具有固定长度且类型相同的元素序列。
    • 切片类型(Slice):表示可变长度的元素序列。
    • 字典类型(Map):表示键值对集合。
    • 通道类型(Channel):用于协程之间的通信。
    • 结构体类型(Struct):表示字段集合。
    • 接口类型(Interface):表示方法集合。
  5. 函数类型:表示函数的类型,可以用作函数参数或返回值。

除了以上基本类型,Go 语言还提供了类型别名(type alias)和空接口类型(interface{})等特殊类型。另外,Go 语言还支持用户自定义类型,可以使用 type 关键字进行定义。

需要注意的是,Go 语言是静态类型语言,变量在声明时就需要指定其类型,并且类型一旦声明后就不能改变。

当涉及到Go语言的数据类型时,以下是一些例子:

  1. bool类型:
var flag bool = true
  1. 整数类型:
var num1 int = 10
var num2 int64 = 1000000000
  1. 浮点数类型:
var pi float32 = 3.14159
var price float64 = 19.99
  1. 字符串类型:
var message string = "Hello, world!"
var multiLineMessage string = `This is a multi-line
string using backticks.`
  1. 指针类型:
var ptr *int
num := 42
ptr = &num
  1. 数组类型:
var numbers [5]int = [5]int{1, 2, 3, 4, 5}
  1. 切片类型:
var names []string = []string{"Alice", "Bob", "Charlie"}
  1. 字典类型:
var ages map[string]int = map[string]int{
    "Alice": 25,
    "Bob":   30,
    "Charlie": 35,
}
  1. 通道类型:
var ch chan int = make(chan int)
  1. 结构体类型:
type Person struct {
    Name string
    Age  int
}

var p Person = Person{Name: "Alice", Age: 25}
  1. 接口类型:
type Shape interface {
    Area() float64
    Perimeter() float64
}

type Rectangle struct {
    Width  float64
    Height float64
}

func (r Rectangle) Area() float64 {
    return r.Width * r.Height
}

func (r Rectangle) Perimeter() float64 {
    return 2 * (r.Width + r.Height)
}

var rect Shape = Rectangle{Width: 5, Height: 3}
  1. 函数类型:
func add(a, b int) int {
    return a + b
}

var operation func(int, int) int
operation = add

以上只是一些基本的示例,展示了Go语言中不同数据类型的用法。在实际的开发中,你可以根据具体需求选择适当的数据类型来存储和操作数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值