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

C#のforeachステートメントで配列要素にアクセスする方法

C#では、foreachステートメントを使うことで、配列の各要素に順番にアクセスできます。foreachは、forループのようにインデックスを管理する必要がなく、配列内のすべての要素をシンプルに処理できる便利な構文です。

基本的な使い方

まずは、10個の整数を持つ配列を作成し、foreachで各要素を出力するサンプルコードを見てみましょう。

using System;
namespace ArrayApplication {
    class MyArray {
        static void Main(string[] args) {
            int[] n = new int[10]; /* nは10個の整数からなる配列 */
            /* 配列nの各要素を初期化 */
            for (int i = 0; i < 10; i++) {
                n[i] = i + 100;
            }
            /* 各配列要素の値を出力 */
            foreach (int j in n) {
                int i = j - 100;
                Console.WriteLine("Element[{0}] = {1}", i, j);
            }
            Console.WriteLine(n);
            Console.ReadKey();
        }
    }
}

実行結果

このプログラムを実行すると、以下のように配列の全要素が出力されます。

Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109
System.Int32[]

最後の「System.Int32[]」は、配列オブジェクトそのものをConsole.WriteLineに渡した際に表示される型名です。foreachで要素を一つずつ取り出す場合は、このような型名ではなく実際の値が表示されます。

特定の要素にアクセスするには

foreachは全要素を順に処理するのに適していますが、「2番目の要素だけが必要」といったケースでは、数値インデックスを使って直接アクセスします。

int a = n[1];

C#の配列は0から始まるため、インデックス「1」を指定すると2番目の要素、つまり101が取得できます。

まとめ

  • foreachステートメントは、配列の全要素を順番に処理するのに便利です。
  • インデックス管理が不要なため、コードがシンプルになりバグも減らせます。
  • 特定位置の要素が必要な場合は、n[1]のような数値インデックスで直接アクセスしましょう。
  1. CSSセレクターで要素のスタイルを設定する方法をわかりやすく解説

    CSSセレクターを活用すると、自分の意図に合わせて特定の要素だけをピンポイントでスタイリングできます。HTML DOMの中から要素を選択する方法には、実にさまざまな種類が用意されています。CSSセレクターの基本構文CSSセレクターの基本的な書き方は以下の通りです。セレクター {     /* スタイル宣言 */ }それでは、実際のコード例を見ながら、CSSセレクターによる要素のスタイル設定方法を確認していきましょう。例1:IDセレクターを使ったスタイル指定まずは、#(シャープ)を使ったIDセレクターの例です。特定のIDを持つ要素のみにスタイルが適用されま

  2. MS Officeを無料で使う5つの方法|追加料金なしで賢く活用する裏ワザ

    MS Officeは、Windows環境において長年にわたり欠かせない存在であり続けてきました。文書作成からクリエイティブなプレゼンテーション制作まで、私たちの生活のさまざまな場面で活躍してきた万能ツールです。多くの方がPCにインストールするスタンドアロン版(単体版)のMS Officeを使用していますが、実はこのバージョンではすべてのアプリケーションや機能にアクセスできるわけではありません。近年はMS Officeの代替ソフトも数多く登場していますが、それでもやはり純正のMS Officeを選びたいという方が多いのではないでしょうか。MS Officeスイートを使う上で最も悩ましい問題の一つ