Menu
Coddy logo textTech

スライスの長さと容量

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)は、スライスを拡張する必要が生じる前に保持できる最大要素数です。

challenge icon

チャレンジ

初心者
このチャレンジでは、スライスの 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:", ?)
	
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン