ホームページ  >  記事  >  バックエンド開発  >  Go言語でリストの長さを取得する方法

Go言語でリストの長さを取得する方法

青灯夜游
青灯夜游オリジナル
2023-01-14 18:02:182661ブラウズ

Go 言語では、リストの組み込み Len() 関数を使用してリストの長さを取得できます。構文は「list.Len()」で、戻り値は長さです。指定されたリストの。 Len() 関数は、配列 (配列ポインターを含む)、スライス、マップ、チャネル、文字列、その他のデータ型の長さを計算するために使用できます。構造体 (構造体)、整数ブール値などは len 関数に渡すことができないことに注意してください。パラメータとして機能します。

Go言語でリストの長さを取得する方法

このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。

Go 言語では、リストの組み込み Len() 関数を使用してリストの長さを取得できます。

リストの長さを計算するための構文形式:

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

Go言語でリストの長さを取得する方法

分析:

  • list .New はリスト listHaiCoder を作成し、PushFront 関数を使用してリストの先頭に 3 つの連続する要素を挿入します。最後に、リストに組み込まれている Len 関数を使用して、リストの長さを取得します。

説明:

len 関数は Go 言語の組み込み関数であるため、Go 言語で直接呼び出すことができます。囲碁プログラム。

その機能は、配列 (配列ポインタを含む)、スライス、マップ、チャネル、文字列などのデータ型の長さを計算することです。構造体 (構造体)、整数ブール値などは使用できないことに注意してください。 as パラメータは len 関数に渡されます。

    #配列または配列ポインター: 要素の数を返します
  • #マップとスライス: 要素の数
  • channel: チャネル内の未読の要素の数
  • String: 文字列の文字数ではなく、バイト数
  • 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
【関連する推奨事項:

Go ビデオ チュートリアル

プログラミング教育 ]

以上がGo言語でリストの長さを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。