スライスの長さと容量
CoddyのGOジャーニー「基礎」セクションの一部 — レッスン 77/109。
Goでは、長さと容量はスライスの2つの異なるプロパティです。
makeを使用してスライスを作成します:
numbers := make([]int, 3, 5)
fmt.Println("Length:", len(numbers))
fmt.Println("Capacity:", cap(numbers))次のように表示されます:
Length: 3
Capacity: 5長さ(Length)は、現在スライスに含まれている要素の数です。容量(Capacity)は、スライスを拡張する必要が生じる前に保持できる最大要素数です。
チャレンジ
初心者このチャレンジでは、スライスの
あなたのタスクは、与えられたスライスの長さと容量の両方を出力するようにコードを完成させることです。
len() 関数と cap() 関数の違いについて学びます。len() 関数はスライス内の現在の要素数を返し、cap() は容量(再割り当てが必要になるまでの最大要素数)を返します。あなたのタスクは、与えられたスライスの長さと容量の両方を出力するようにコードを完成させることです。
チートシート
Goでは、スライスには長さと容量という2つのプロパティがあります。
長さは、現在スライスに含まれている要素の数です。容量は、スライスを拡張する必要が生じる前に保持できる要素の最大数です。
長さを取得するにはlen()を、容量を取得するにはcap()を使用します:
numbers := make([]int, 3, 5)
fmt.Println("Length:", len(numbers)) // 長さ: 3
fmt.Println("Capacity:", cap(numbers)) // 容量: 5自分で試してみよう
package main
import "fmt"
func main() {
// 要素数が3で容量が5のスライス
numbers := make([]int, 3, 5)
// TODO: len()を使用してスライスの長さを出力する
fmt.Println("Length:", ?)
// TODO: cap()を使用してスライスの容量を出力する
fmt.Println("Capacity:", ?)
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。