C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で配列をループ処理する方法|for・foreach・whileの使い方を解説

C#で配列の要素を順番に処理(ループ)するには、whiledo...whileforforeachといった各種ループ構文を使用できます。これらのループは開始値と終了条件を持っているため、反復処理の中で柔軟に値の設定やチェックを行うことが可能です。

配列のループに使える4つのループ構文

  • for文: 初期化・条件式・更新処理を1行にまとめて記述でき、インデックスを使った処理に最適です。
  • foreach文: 配列やコレクションの全要素を簡潔に走査できます。
  • while文: 条件式がtrueである限り、繰り返し処理を実行します。
  • do...while文: 条件判定の前に必ず1回処理を実行します。

ここでは、最もよく使われるfor文による配列のループ処理を見ていきましょう。

for文を使った配列ループのサンプルコード

using System;

namespace ArrayApplication {
    class MyArray {
        static void Main(string[] args) {
            int[] n = new int[10];
            int i, j;

            // 配列の要素を初期化
            for (i = 0; i < 10; i++) {
                n[i] = i + 10;
            }

            // 配列の要素を表示
            for (j = 0; j < 10; j++) {
                Console.WriteLine("Element[{0}] = {1}", j, n[j]);
            }
            Console.ReadKey();
        }
    }
}

コードの解説

まず、10個のint型要素を持つ配列を宣言します。

int[] n = new int[10];

次に、for文を使って配列の各要素を初期化します。

for (i = 0; i < 10; i++) {
    n[i] = i + 10;
}

このループでは、i = 0 から i = 9 まで繰り返し処理が行われ、各反復のたびに i++ によってカウンタの値が1ずつ増加します。各反復内の n[i] = i + 10; により、要素0から順に「10、11、12…」という値が格納されていきます。

実行結果

Element[0] = 10
Element[1] = 11
Element[2] = 12
Element[3] = 13
Element[4] = 14
Element[5] = 15
Element[6] = 16
Element[7] = 17
Element[8] = 18
Element[9] = 19

補足:foreach文でのループ例

インデックスが不要な場合は、foreach文を使うとより簡潔に記述できます。

foreach (int element in n) {
    Console.WriteLine(element);
}

foreach文は配列の全要素へ自動的にアクセスできるため、読み取り専用の処理に便利です。一方、要素の値を書き換えたい場合や、インデックス番号が必要な処理では、for文を選ぶのが適切です。用途に応じてループ構文を使い分けることで、より可読性の高いコードになります。

  1. JavaScriptで配列をループ処理する方法まとめ|for文・while文・do…while文の使い方

    JavaScriptには、配列をループ処理するためのさまざまな方法が用意されています。それぞれの特徴を理解して使い分けることで、より効率的で読みやすいコードを書くことができます。本記事では、代表的なループ構文の基本と実行例をわかりやすく解説します。 JavaScriptのforループ まずは基本となるforループから見ていきましょう。JavaScriptのforループには主に2つの形式があります。1つ目は「初期化式・条件式・更新式」を指定する形式です。最初に初期化ステートメントを実行し、各イテレーションのたびに更新式を実行してから条件式を評価します。条件がtrueである限り、ループは繰り返され

  2. JavaScriptでオブジェクトを含む「配列の配列」をループ処理する方法

    JavaScriptでオブジェクトを含む多次元配列をループするには?JavaScriptでは、オブジェクトを含む配列の配列(入れ子構造の配列)をループ処理する際、forEach()メソッドをネストして使用し、さらにfor...inループで各オブジェクトのプロパティにアクセスするのが一般的な方法です。以下に、具体的な実装例を紹介します。コード例<!DOCTYPE html> <html lang=ja> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device