配列の要素を取得するには以下の方法があります。
– 添え字を直接指定して取得
– foreach文で取得
– for文で取得
## 配列の要素を添え字を直接指定して取得
配列の要素は添え字(要素に割り振られる番号)を直接指定して取得できます。
配列名[添え字]
添え字は0から順番に割り振られる
添え字は配列名のあとに[]で囲んで指定
using static System.Console;
class Test
{
static void Main()
{
string[] kago = { "イチゴ", "ミカン" };
WriteLine(kago[0]);
WriteLine(kago[1]);
}
}
イチゴ
ミカン
kago[1]:配列kagoの添え字[1]の要素を指定
2. イチゴと表示される
3. kago[1]で配列kagoの添え字[1]の要素の”ミカン”を指定
4. ミカンと表示される
## 配列の要素をforeach文で取得
foreach文は配列の要素数の回数ループします。
1回のループで先頭から順番に1つの要素が変数に代入されます。
ブロック内で変数を使った処理ができます。
foreach文 (型名 変数名 in 配列名)
{
変数を使った処理;
}
配列名:要素を取得したい配列名を指定
変数を使った処理;:配列の要素を代入した変数を使った処理
2. ブロック内の処理が実行される
例えば、ブロック内でWrite(変数名)と書いたら、取得した要素が表示できる
3. 処理が終わると先頭まで戻り、変数に配列名の添え字[1]の要素が代入される
4. 再びブロック内の処理が実行される
5. 変数に代入する要素がなくなるまで繰り返し実行される
このようにforeach文を使うと、ループごとに配列の要素を1つずつ取得できます。
using static System.Console;
class Test
{
static void Main()
{
string[] kago = { "イチゴ", "ミカン" };
foreach文 (string nakami in kago)
{
WriteLine(nakami);
}
}
}
イチゴ
ミカン
kago:要素を取得する配列に配列kagoを指定
WriteLine(nakami);:処理が実行されると、変数nakamiを表示
2. WriteLine(nakami);が実行され、イチゴと表示される
3. 先頭まで戻る
4. string nakamiにkagoの添え字[1]の要素の”ミカン”が代入される
5. 先頭まで戻る
6. WriteLine(nakami);が実行され、ミカンと表示される
7. 代入する要素がなくなったので、foreach文を終了する
## 配列の要素をfor文で取得
for文を配列の要素数の回数だけループ処理を実行します。
iの値はループごとに0から1ずつ増えます。
配列の要素[i]でループごとに先頭から1つの要素を順番に取得します。
for文 (int i = 0; i < 配列名.Length; i++)
{
配列名[i];
}
int i = 0;:変数iを0で初期化
i < 配列名.Length;:配列名.Lengthで配列の要素数を取得。iが配列の要素数より多くなったらループを終了
配列名[i];:配列の要素[i]を取得
i++:iの値はループごとに1ずつ増える
2. i < 配列名.Length;を実行し、iが配列の要素数以下ならtrueになり、ブロック内の処理を実行
3. 配列名[i];で配列名[i]の要素を取得
4. i++が実行され、iが1増える
5. 「 2.3.4. 」のループ処理を、配列の要素数の回数繰り返す
using static System.Console;
class Test
{
static void Main()
{
string[] kago = { "イチゴ", "ミカン" };
for文 (int i = 0; i < kago.Length; i++)
{
WriteLine(kago[i]);
}
}
}
1. int i = 0;でiに0を代入
2. i < kago.Length;のkago.Lengthは配列kagoの要素の数の2を指定し、iが2以下の場合trueになる
iの値は0なのでtrueになり、ブロック内の処理が実行される
3. WriteLine(kago[i]);でkago[i]の値が表示される
iは0なので、kago[0]の値のイチゴが表示される
4. i++が実行されiが1増えて1になる
1. i < kago.Length;が実行され、iの値は1なのでtrueになり、ブロック内の処理が実行される
2. WriteLine(kago[i]);でkago[1]の値のミカンが表示される
3. i++が実行されiが1増えて2になる
1. i < kago.Length;が実行され、iの値は2なのでfalseになりfor文が終了する