-
结构体和方法 type testName struct { aaa string bbb int }查看全部
-
函数是一等类型,我们可以把函数作为值来传递和使用查看全部
-
休眠1秒 time.Sleep(time.Second) 引入 import "time"查看全部
-
Sender chan<- 发送通道,表示只可向其中发送数据的通道 Receiver <-chan 接收通道,表示只可从中接收数据的通道查看全部
-
还可以以数据在通道中的传输方向为依据来划分通道,默认情况下,通道都是双向的(双向通道),如果数据只能在通道中单项传输,那么该通道就被称作单向通道,我们在初始化一个通道值时不能指定它为单向 type Receiver <-chan int查看全部
-
非缓冲通道的初始化方法 make(chan int,0) PS:第二个参数是0查看全部
-
通道有带缓冲和非缓冲之分 缓冲通道中可以存N个数据,初始化一个通道的值时必须指定这个N 非缓冲通道不会缓存任何数据 发送方在向通道值发送数据时会立即被阻塞,直到某个接收方已从该通道值中接收这条数据查看全部
-
在Go语言中有这样一项规定,即:对于字典值来说,如果其中不存在索引表达式欲取出的键值对,那么就以它的值类型的空值(或称默认值)作为该索引表达式的求值结果。由于字符串类型的空值为"",所以mm[5]的求值结果即为""。查看全部
-
数组类型 一个数组(Array)就是一个可以容纳若干类型相同的元素的容器 容器大小(数组长度)是固定的,且是体现在数组的类型字面量之中的 声明一个数组类型: type MyNumbers [3] int PS:类型声明语句由关键字type、类型名称和类型字面量组成查看全部
-
%X 表示以16进制表示数值 %E 表示以查看全部
-
16进制: 它由0-9,A-F组成,字母不区分大小写 与10进制的对应关系是:0-9对应0-9;A-F对应10-15 N进制的数可以用0~(N-1)的数表示,超过9的用字母A-F查看全部
-
1.数值变量赋值,int类型默认是10进制表示, var num1 int = 10 (默认10进制) var num1 int = 010 (使用8进制表示,前缀是 0表示) var num1 int = 0xC (使用16进制表示,前缀是0x)查看全部
-
- work 显示编译时创建的临时工作目录的路径,并且不删除它查看全部
-
var slice2 = slice1[1:3]其中切片后面的两个数值的范围只能是[0.len(slice1)] 所以切片slice2的长度为len(slice2)即切片实际元素的个数。查看全部
-
切片(Slice)与数组不同的是,无法通过切片类型来确定其值的长度。每个切片值都会将数组作为其底层数据结构。我们也把这样的数组称为切片的底层数组。 切片类型的字面量如:[]int 或[]string 不同长度的切片值是有可能属于同一个类型的。而不同长度的数组值必定属于不同类型。切片类型的声明:type MySlice []int 类型MySlice即为切片类型[]int的一个别名。切片值的表示:[]int{1, 2, 3} 我们在上一节讲到的操作数组值的方法同样适用于切片值。不过,还有一种操作数组值的方法我们没讲到。这种操作的名称就叫“切片”,如: var numbers3 = [5]int{1, 2, 3, 4, 5} var slice1 = numbers3[1:4] 切片表达式( 第二条赋值语句中在“=”右边部分)一般由(numbers3有三种可能)字符串、数组或切片的值以及由方括号包裹由英文冒号“:”分隔的两个正整数组成。这两个正整数分别表示元素下界和上界索引。在本例中,切片表达式numbers3[1:4]的求值结果为[]int{2, 3, 4}。可见,切片表达式的求值结果相当于以元素下界和上界索引作为依据从被操作对象上“切下”而形成的新值。被“切下”的部分不包含上界索引指向的元素。另外,切片表达式的求值结果会是切片类型的,且其元素类型与被“切片”的值的元素类型一致 我们也可以在一个切片值上实施切片操作。操作的方式与上述无异。如: var slice2 = slice1[1:3] slice2的值为[]int{3, 4}。注意,作为切片表达式求值结果的切片值的长度总是为元素上界索引与元素下界索引的差值len(slice2)即上例的3-1 除了长度,切片值以及数组值还有另外一个属性——容量。数组值的容量总是等于其长度。而切片值的容量则往往与其长度不同 一个切片值的容量即为它的第一个元素值在其底层数组中的索引值与该数组长度的差值的绝对值。获取数组、切片或通道类型的值的容量,我们可以使用内建函数cap,如: var capacity2 int = cap(slice2) 最后,要注意,切片类型属于引用类型。它的零值为nil,即空值。如果我们只声明一个切片类型的变量而不为它赋值,那么该变量的值将会是nil。例如: var slice3 []int 它的值是nil查看全部
举报
0/150
提交
取消