Home  >  Article  >  Backend Development  >  How to get the list length in go language

How to get the list length in go language

青灯夜游
青灯夜游Original
2023-01-14 18:02:182680browse

In the Go language, you can use the built-in Len() function of the list to obtain the length of the list. The syntax is "list.Len()" and the return value is the length of the specified list. The Len() function can be used to calculate the length of arrays (including array pointers), slices, maps, channels, strings and other data types; note that structures (structs), integer Boolean, etc. cannot be passed to the len function as parameters .

How to get the list length in go language

The operating environment of this tutorial: Windows 7 system, GO version 1.18, Dell G3 computer.

In the Go language, you can use the built-in Len() function of the list to get the list length.

The syntax format for calculating list length:

Len() int
  • Use the built-in Len() function of the list to get the length of the list.

Example:

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)
}

How to get the list length in go language

Analysis:

  • We pass the list .New creates a list listHaiCoder, and then uses the PushFront function to insert three consecutive elements at the head of the list. Finally, we use the Len function built into the list to get the length of the list.

Explanation:

The len function is a built-in function in the Go language, so it can be called directly in the Go program.

Its function is to calculate the length of data types such as arrays (including array pointers), slices, maps, channels, strings, etc. Note that structures (structs), integer Boolean, etc. cannot be used as The parameters are passed to the len function.

  • Array or array pointer: return the number of elements

  • map and slice: the number of elements

  • channel: The number of unread elements in the channel

  • String: the number of bytes, not the number of characters in the string

  • When The value of V is a nil value, and len returns 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

When processing strings, it is often necessary to know the number of characters in the string, but len() only counts the number of bytes in the string. So we can customize the function that handles the number of strings.

//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

【Related recommendations: Go video tutorial, Programming teaching

The above is the detailed content of How to get the list length in go language. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn