繰り返し文
紹介
Wave言語では、同じコードを複数回実行する必要がある状況を処理するためにループを提供します。 ループは、特定の条件が満たされる間コードを繰り返し実行するか、定められた回数繰り返し実行する際に使用されます。
これにより、同じロジックを繰り返し記述する必要なく、簡潔で明確なコードで反復作業を表現することができます。 Waveは条件ベースのループと回数ベースのループの両方をサポートしており、ループ内で実行の流れを制御できるキーワードも提供します。
このセクションでは、while 文と for 文、そしてループの流れを制御する break 、continue キーワードの使用方法を説明します。
while文
while 文は、指定された条件式が真(true)と評価される間、コードブロックを繰り返し実行します。
条件式が偽(false)になると、ループは即座に終了します。
この方法は、繰り返しの回数が明確でなく、特定の条件が満たされるまで繰り返す必要がある状況に適しています。
基本構造
Waveでのwhile文の基本構造は次の通りです。
while (条件式) {
// 繰り返しコード
}
条件式は必ず bool タイプで評価されなければならず、中括弧 {} で囲まれたコードブロック内には1つ以上の命令文を書くことができます。
例: 0から4まで出力
var i :i32 = 0;
while (i < 5) {
println("iは{}です。", i);
i = i + 1;
}
この例では、変数 i が5より小さい間、繰り返しが行われます。
各ループで現在の値を出力し、条件が最終的に偽になるように i の値を1ずつ増加させます。
for文
for 文は繰り返し回数が比較的明確な場合に使用する適したループです。
初期値、条件式、増減式を一度に定義してループの流れを明確に表現できます。
ループ制御に必要な要素が一か所に集まっているため、ループ構造を一目で把握しやすいという利点があります。
基本構造
for (초기화; 조건식; 증감식) {
// 반복할 코드
}
Wave의 for 초기화는 여러 형태를 지원합니다.
- 암시적
var타입 초기화 var/let mut/const선언 초기화- 일반 식 초기화 (기존 변수 재사용)
예제 1: 암시적 타입 초기화
for (i :i32 = 1; i <= 5; i += 1) {
println("i = {}", i);
}
예제 2: var / let mut 초기화
for (var i: i32 = 0; i < 3; i += 1) {
println("var i = {}", i);
}
for (let mut j: i32 = 0; j < 3; j += 1) {
println("let mut j = {}", j);
}