Menu
CoddyTech

要素の反復処理

CoddyのGDScriptジャーニー「基礎」セクションの一部。レッスン 69/92。

反復処理とは、配列の要素を1つずつ順に処理することです。forループでは、要素を直接取り出せます。

var fruits := ["apple", "banana", "orange"]
for fruit in fruits:
	print(fruit)
apple
banana
orange

各反復で、ループ変数 fruit には、最初から最後まで順に次の要素が格納されます。ループは要素ごとに1回実行されるため、インデックスも size() も必要ありません。

ループ内で各要素をテストできます。length()メソッドは文字列の文字数を返すため("apple".length()は5)、このループは3文字より長い単語だけを出力します。

var words := ["hi", "hello", "hey", "howdy"]
for word in words:
	if word.length() > 3:
		print(word)
hello
howdy
challenge icon

チャレンジ

簡単

プログラムはカンマで区切られた単語を1行読み込み、それを配列 words に分割します(ここまではすでに記述されています)。

5文字より長い単語をすべて、順序を保ったまま配列 long_words に追加してください。print(long_words) の行はすでに記述されています。入力が penguin,koala,dolphin の場合、出力は次のとおりです。

["penguin", "dolphin"]

自分で試してみよう

extends Node

func _ready():
	# cat,penguin,dog のような1行を読み込み、カンマで区切って単語の配列にする
	var words := OS.read_string_from_stdin().split(",")
	var long_words: Array[String] = []
	# 5文字より長い単語をすべて long_words に追加する
	print(long_words)
quiz icon腕試し

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

基礎のすべてのレッスン

自分で練習してみよう: GDScriptオンラインコンパイラ