「len()」是用來取得字串、陣列、切片、字典以及通道等類型的長度或元素個數的函數,具體用法為」len(被獲取的元素名稱)“,但是對於字串來說,」len()「函數傳回的是字串的位元組數,而非字元數。
本教學作業系統:Windows10系統、Dell G3電腦。
在Go語言中,len()函數用於取得字串、陣列、切片、字典以及通道等類型的長度或元素個數。具體用法如下:
s := "hello, world!" length := len(s) // length为13
arr := [3]int{1, 2, 3} length := len(arr) // length为3
slice := []int{1, 2, 3} length := len(slice) // length为3
dict := map[string]int{"a": 1, "b": 2, "c": 3} length := len(dict) // length为3
ch := make(chan int, 3) ch <- 1 ch <- 2 ch <- 3 length := len(ch) // length为3
要注意的是,對於字串來說,len()函數傳回的是字串的位元組數,而非字元數。對於漢字等非ASCII字符,一個字元可能佔用多個字節,因此需要使用utf8.RuneCountInString()函數取得字元數。例如:
s := "你好,世界!" byteLength := len(s) // byteLength为15 runeLength := utf8.RuneCountInString(s) // runeLength为6
除了上述型別外,len()函數還可以用來取得陣列、切片和字典的容量,以及string、[]byte等類型的位元組陣列容量。例如:
// 获取切片容量 slice := make([]int, 3, 5) capacity := cap(slice) // capacity为5 // 获取字节数组容量 str := "hello" byteCapacity := cap([]byte(str)) // byteCapacity为6
總之,len()函數是Go語言中非常常用的函數,可以方便地取得資料結構的長度或元素個數。
以上是len是什麼函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!