在go語言中,可以使用列表內置的Len()函數來獲取list長度,語法“列表list.Len()”,返回值為指定list的長度。Len()函數可用于計算數組(包括數組指針)、切片(slice)、map、channel、字符串等數據類型的長度;注意,結構休(struct)、整型布爾等不能作為參數傳給len函數。
本教程操作環境:windows7系統、GO 1.18版本、Dell G3電腦。
在go語言中,可以使用列表內置的Len()函數來獲取list長度。
計算list長度的語法格式:
Len() int
登錄后復制
-
使用列表內置的 Len() 函數,獲取列表的長度。
示例:
package main import ( "container/list" "fmt" ) func main() { //使用列表內置的 Len() 函數,獲取列表的長度 listHaiCoder := list.New() listHaiCoder.PushFront("Hello") listHaiCoder.PushFront("HaiCoder") listHaiCoder.PushFront("嗨客網") len := listHaiCoder.Len() fmt.Println("Len =", len) }
登錄后復制
分析:
-
我們通過 list.New 創建了一個列表 listHaiCoder,接著使用 PushFront 函數在列表的頭部連續插入了三個元素。最后,我們使用列表內置的 Len 函數,獲取列表的長度。
說明:
len函數是Go語言中的內置函數,因此,在Go程序中可以直接調用。
其作用是用于計算數組(包括數組指針)、切片(slice)、map、channel、字符串等數據類型的長度,注意,結構休(struct)、整型布爾等不能作為參數傳給len函數。
-
數組或數組指針:返回元素個數
-
map和slice: 元素個數
-
channel:通道中未讀的元素個數
-
字符串:字節數,并非字符串的字符數
-
當V的值為nil值,len返回0
sl := make([]int,0) sl = nil if sl == nil{ fmt.Println(len(sl)) //當slice類型為nil時,輸出0 } s := "歡迎學習Go的len()函數"//14個字符 fmt.Println(len(s))//輸入28
登錄后復制
在處理字符串時,經常需要知道字符串的字符數,但len()只計算字符串字節數,因此我們可以自定義處理字符串個數的函數。
//rune是32位的int別外,可以代表一個unicode字符,因此,通過將字符串將成rune類型的切片,切片元素個數代表字符個數 func count(str string) int { r := []rune(str) return len(r) } s := "歡迎學習Go的len()函數"//14個字符 fmt.Println(count(s))//14 fmt.Println(len(s))//28
登錄后復制
【