Go中的数据类型
来源:互联网 发布:单片机有哪些级别 编辑:程序博客网 时间:2024/05/16 04:04
bool
byte
rune
int/uint
int8/uint8
int16/uint16
int32/uint32
int64/int64
Pointer
chan 通道
func 函数
interface 接口
map 字典
struct 结构
nil 空值
type 用于自己定义数据类型
const 常量或者常量表达式
type MyString [3]string
MyString 是一个元素个数为3的数组类型
声明一个为Person的自定义结构体
type Person struct{
Name string
Age uint8
Address string
}
定义一个结构体
Person{Name:"ysd",Age:21,Address:"sichuan.china"}
Arrary 数组
类型表示法,不是引用类型
[n]T
[2*3*4]byte
[3]string{"ysd","sichuan","guangyuan"} // 长度为3.
一个数组即是一个值.所以在传递数组变量时,传递的是整个数组
如果是一个指针,则我们就需要取地址符号
Slice 切片
len([string{10:"ysd"}])
该值得表达式是11, len可以求数组的长度
cap可以求出容量,
创建方式
slice1 := make([]string, 长度,容量)
slice := array[起始:结束] ,将数组array的前四个元素,作为新的切片类型
注意,包含起始,不包含结束,不能超过当前的长度
向切片中追加新的值
slice1 = append(slice1,"c++","php");
append的实现和c++的vector容器一致
copy可以拷贝一个切片
n1 := copy(sliceA,sliceB)
n1代表的是复制了的元素的数量
Map 字典
类型表示,该类型是引用类型
map[K]T
需要注意的是它的键类型不能是函数类型,字典类型,和切片类型
map[string]bool类型的表示方法
map[string]bool{"vim":true,"ysd":false}
空类型的表示方法
map[string]bool{}
复合类型的字面值由 {}括起来的符合元素的列表组成
接收操作符
注意事项
从一个通道类型的空值接受值的表达式将永远阻塞
从一个已经关闭的通道类型值接收值会永远成功,并立即返回一个其元素的零值.
example
editor := map[string]bool{}
删除:
delete(editor,"gedit")
= 和:= 的区别
=用于将一个值赋值给一个已经被声明的常量或者是变量
:= 用于在声明一个变量的同时并且对该变量进行赋值
go语言注意事项,在GO语言中没有值传递和引用传递,有的是值类型和引用类型
go语言中的类型表示法
name string
func search(name string,age int)(result int)
result 在该函数被调用的时候会赋值给0值
func Model(x,y int)(result int){
result = x%y
return
}
byte
rune
int/uint
int8/uint8
int16/uint16
int32/uint32
int64/int64
Pointer
chan 通道
func 函数
interface 接口
map 字典
struct 结构
nil 空值
type 用于自己定义数据类型
const 常量或者常量表达式
type MyString [3]string
MyString 是一个元素个数为3的数组类型
声明一个为Person的自定义结构体
type Person struct{
Name string
Age uint8
Address string
}
定义一个结构体
Person{Name:"ysd",Age:21,Address:"sichuan.china"}
Arrary 数组
类型表示法,不是引用类型
[n]T
[2*3*4]byte
[3]string{"ysd","sichuan","guangyuan"} // 长度为3.
一个数组即是一个值.所以在传递数组变量时,传递的是整个数组
如果是一个指针,则我们就需要取地址符号
Slice 切片
len([string{10:"ysd"}])
该值得表达式是11, len可以求数组的长度
cap可以求出容量,
创建方式
slice1 := make([]string, 长度,容量)
slice := array[起始:结束] ,将数组array的前四个元素,作为新的切片类型
注意,包含起始,不包含结束,不能超过当前的长度
向切片中追加新的值
slice1 = append(slice1,"c++","php");
append的实现和c++的vector容器一致
copy可以拷贝一个切片
n1 := copy(sliceA,sliceB)
n1代表的是复制了的元素的数量
Map 字典
类型表示,该类型是引用类型
map[K]T
需要注意的是它的键类型不能是函数类型,字典类型,和切片类型
map[string]bool类型的表示方法
map[string]bool{"vim":true,"ysd":false}
空类型的表示方法
map[string]bool{}
复合类型的字面值由 {}括起来的符合元素的列表组成
接收操作符
注意事项
从一个通道类型的空值接受值的表达式将永远阻塞
从一个已经关闭的通道类型值接收值会永远成功,并立即返回一个其元素的零值.
example
editor := map[string]bool{}
删除:
delete(editor,"gedit")
= 和:= 的区别
=用于将一个值赋值给一个已经被声明的常量或者是变量
:= 用于在声明一个变量的同时并且对该变量进行赋值
go语言注意事项,在GO语言中没有值传递和引用传递,有的是值类型和引用类型
go语言中的类型表示法
name string
func search(name string,age int)(result int)
result 在该函数被调用的时候会赋值给0值
func Model(x,y int)(result int){
result = x%y
return
}
0 0
- Go中的数据类型
- Go-数据类型
- GO-数据类型protobuf-go-mysql
- [go语言]基本数据类型
- Go 语言数据类型
- go语言基本数据类型
- 4.Go 语言数据类型
- 3.Go语言数据类型
- Go的基本数据类型
- Go 数据类型判断
- GO语言常见数据类型
- Go 学习笔记:Go 语言数据类型
- GO断言来转换数据类型
- Go 基础之数据类型、变量
- Go语言学习之数据类型
- Go语言的复合数据类型
- [Go]数据类型——开头
- Go基础编程:基础数据类型
- 智能指针的实现
- 解决80端口被占用的问题
- macOS上的SIP(System Integrity Protection)
- lepus(天兔安装教程)
- C# 银行
- Go中的数据类型
- mysql_备份_1_导出
- js中math对象
- Python学习总结笔记(5)--进程/线程Event机制使用时要注意的一个问题
- POJ 3624 Charm Bracelet
- MFC中组合框获取当前选中文本
- js中的value和innerHTML和inerText
- 第8章
- 让人心动的jQuery插件和HTML5动画