-
結(jié)構(gòu)體和方法 type testName struct { aaa string bbb int }查看全部
-
函數(shù)是一等類型,我們可以把函數(shù)作為值來傳遞和使用查看全部
-
休眠1秒 time.Sleep(time.Second) 引入 import "time"查看全部
-
Sender chan<- 發(fā)送通道,表示只可向其中發(fā)送數(shù)據(jù)的通道 Receiver <-chan 接收通道,表示只可從中接收數(shù)據(jù)的通道查看全部
-
還可以以數(shù)據(jù)在通道中的傳輸方向?yàn)橐罁?jù)來劃分通道,默認(rèn)情況下,通道都是雙向的(雙向通道),如果數(shù)據(jù)只能在通道中單項(xiàng)傳輸,那么該通道就被稱作單向通道,我們在初始化一個(gè)通道值時(shí)不能指定它為單向 type Receiver <-chan int查看全部
-
非緩沖通道的初始化方法 make(chan int,0) PS:第二個(gè)參數(shù)是0查看全部
-
通道有帶緩沖和非緩沖之分 緩沖通道中可以存N個(gè)數(shù)據(jù),初始化一個(gè)通道的值時(shí)必須指定這個(gè)N 非緩沖通道不會(huì)緩存任何數(shù)據(jù) 發(fā)送方在向通道值發(fā)送數(shù)據(jù)時(shí)會(huì)立即被阻塞,直到某個(gè)接收方已從該通道值中接收這條數(shù)據(jù)查看全部
-
在Go語言中有這樣一項(xiàng)規(guī)定,即:對于字典值來說,如果其中不存在索引表達(dá)式欲取出的鍵值對,那么就以它的值類型的空值(或稱默認(rèn)值)作為該索引表達(dá)式的求值結(jié)果。由于字符串類型的空值為"",所以mm[5]的求值結(jié)果即為""。查看全部
-
數(shù)組類型 一個(gè)數(shù)組(Array)就是一個(gè)可以容納若干類型相同的元素的容器 容器大?。〝?shù)組長度)是固定的,且是體現(xiàn)在數(shù)組的類型字面量之中的 聲明一個(gè)數(shù)組類型: type MyNumbers [3] int PS:類型聲明語句由關(guān)鍵字type、類型名稱和類型字面量組成查看全部
-
%X 表示以16進(jìn)制表示數(shù)值 %E 表示以查看全部
-
16進(jìn)制: 它由0-9,A-F組成,字母不區(qū)分大小寫 與10進(jìn)制的對應(yīng)關(guān)系是:0-9對應(yīng)0-9;A-F對應(yīng)10-15 N進(jìn)制的數(shù)可以用0~(N-1)的數(shù)表示,超過9的用字母A-F查看全部
-
1.數(shù)值變量賦值,int類型默認(rèn)是10進(jìn)制表示, var num1 int = 10 (默認(rèn)10進(jìn)制) var num1 int = 010 (使用8進(jìn)制表示,前綴是 0表示) var num1 int = 0xC (使用16進(jìn)制表示,前綴是0x)查看全部
-
- work 顯示編譯時(shí)創(chuàng)建的臨時(shí)工作目錄的路徑,并且不刪除它查看全部
-
var slice2 = slice1[1:3]其中切片后面的兩個(gè)數(shù)值的范圍只能是[0.len(slice1)] 所以切片slice2的長度為len(slice2)即切片實(shí)際元素的個(gè)數(shù)。查看全部
-
切片(Slice)與數(shù)組不同的是,無法通過切片類型來確定其值的長度。每個(gè)切片值都會(huì)將數(shù)組作為其底層數(shù)據(jù)結(jié)構(gòu)。我們也把這樣的數(shù)組稱為切片的底層數(shù)組。 切片類型的字面量如:[]int 或[]string 不同長度的切片值是有可能屬于同一個(gè)類型的。而不同長度的數(shù)組值必定屬于不同類型。切片類型的聲明:type MySlice []int 類型MySlice即為切片類型[]int的一個(gè)別名。切片值的表示:[]int{1, 2, 3} 我們在上一節(jié)講到的操作數(shù)組值的方法同樣適用于切片值。不過,還有一種操作數(shù)組值的方法我們沒講到。這種操作的名稱就叫“切片”,如: var numbers3 = [5]int{1, 2, 3, 4, 5} var slice1 = numbers3[1:4] 切片表達(dá)式( 第二條賦值語句中在“=”右邊部分)一般由(numbers3有三種可能)字符串、數(shù)組或切片的值以及由方括號包裹由英文冒號“:”分隔的兩個(gè)正整數(shù)組成。這兩個(gè)正整數(shù)分別表示元素下界和上界索引。在本例中,切片表達(dá)式numbers3[1:4]的求值結(jié)果為[]int{2, 3, 4}??梢?,切片表達(dá)式的求值結(jié)果相當(dāng)于以元素下界和上界索引作為依據(jù)從被操作對象上“切下”而形成的新值。被“切下”的部分不包含上界索引指向的元素。另外,切片表達(dá)式的求值結(jié)果會(huì)是切片類型的,且其元素類型與被“切片”的值的元素類型一致 我們也可以在一個(gè)切片值上實(shí)施切片操作。操作的方式與上述無異。如: var slice2 = slice1[1:3] slice2的值為[]int{3, 4}。注意,作為切片表達(dá)式求值結(jié)果的切片值的長度總是為元素上界索引與元素下界索引的差值len(slice2)即上例的3-1 除了長度,切片值以及數(shù)組值還有另外一個(gè)屬性——容量。數(shù)組值的容量總是等于其長度。而切片值的容量則往往與其長度不同 一個(gè)切片值的容量即為它的第一個(gè)元素值在其底層數(shù)組中的索引值與該數(shù)組長度的差值的絕對值。獲取數(shù)組、切片或通道類型的值的容量,我們可以使用內(nèi)建函數(shù)cap,如: var capacity2 int = cap(slice2) 最后,要注意,切片類型屬于引用類型。它的零值為nil,即空值。如果我們只聲明一個(gè)切片類型的變量而不為它賦值,那么該變量的值將會(huì)是nil。例如: var slice3 []int 它的值是nil查看全部
舉報(bào)
0/150
提交
取消