golang中的数据类型以及定义数据类型

数据类型

golang 中的数据类型

bool
string
byte
int, uint, int8, uint8, int16, uint16, int32, uint32, int64, uint64
float32, float64, complex, complex64, complex128
rune
uintptr 无符号整型,用于存放一个指针,该类型用于指针计算
结构体类型
指针类型
数组
切片
map
interface{}
通道类型
函数类型
时间类型

定义数据类型

package _case

import "fmt"

func VarDeclareCase() {
	// 声明变量并赋值
	// 整数自动推断为 int 类型
	var a, b, c int = 1, 2, 3
	fmt.Println(a, b, c)

	// 小数自动推断为 float64
	var f float64 = 3.14
	fmt.Println(f)

	// 使用 := 来进行自动推断,此方式只能用于局部变量的定义
	flag := true
	fmt.Println(flag)

	// 数组类型
	var array = [5]int{1, 2, 3, 4, 5}
	for index, num := range array {
		fmt.Printf("array数组的第%d个元素为%d\n", index+1, num)
		fmt.Printf("array数组的第%d个元素为%d\n", index+1, array[index])
	}

	var array1 [6]int
	array1[0] = 10
	for i := 0; i < len(array1); i++ {
		fmt.Printf("array1数组的第%d个元素为%d\n", i+1, array1[i])
	}

	// 指针类型
	var num int = 10
	// 这里调用 f1 函数,由于传入的是 num 的地址,所以会改变 num 的值
	f1(&num)
	// 输出 11
	fmt.Println(num)

	// 接口类型
	// 空接口类型可以用于接收任何类型
	// 相当于 Java 的 Object 类型
	var inter interface{}
	inter = &num
	fmt.Println("num的地址为:", inter)
}

func f1(a *int) {
	*a = *a + 1
}
  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Golang,基本数据类型包括整型、浮点型、布尔型、字符串和字符型。引用数据类型包括数组、切片、映射、结构体和接口。 1. 整型:Golang提供了多种整型,包括int、int8、int16、int32、int64、uint、uint8、uint16、uint32和uint64等。它们分别表示有符号和无符号的整数,不同类型的整数有不同的取值范围。 2. 浮点型:Golang提供了两种浮点型,即float32和float64。它们分别表示单精度和双精度浮点数,用于表示小数。 3. 布尔型:Golang的布尔型只有两个取值,即true和false。用于表示逻辑值。 4. 字符串:Golang的字符串是一系列字节的集合,使用双引号或反引号括起来。字符串是不可变的,可以通过索引访问其的字符。 5. 字符型:Golang的字符类型使用单引号括起来,表示一个Unicode字符。 引用数据类型: 1. 数组:数组是一组具有相同类型的元素的集合,长度固定。可以通过索引访问数组的元素。 2. 切片:切片是对数组的抽象,它可以动态增长和缩小。切片是一个引用类型,可以通过切片操作符[:]来获取子切片。 3. 映射:映射是一种无序的键值对集合,也称为字典或哈希表。可以通过键来访问对应的值。 4. 结构体:结构体是一种自定义数据类型,可以包含多个字段,每个字段可以有不同的类型。结构体用于组织和存储相关的数据。 5. 接口:接口是一种抽象类型,定义了一组方法的集合。接口可以被其他类型实现,实现了接口的类型可以被当作该接口类型使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值