本文小编为大家详细介绍“go语言如何获取list长度”,内容详细,步骤清晰,细节处理妥当,希望这篇“go语言如何获取list长度”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
在go语言中,可以使用列表内置的Len()函数来获取list长度,语法“列表list.Len()”,返回值为指定list的长度。Len()函数可用于计算数组(包括数组指针)、切片(slice)、map、channel、字符串等数据类型的长度;注意,结构休(struct)、整型布尔等不能作为参数传给len函数。
在go语言中,可以使用列表内置的Len()函数来获取list长度。
计算list长度的语法格式:
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