配列
配列とは、複数の値をまとめられることです。
配列の変数定義
配列を扱う場合には、配列型の変数に配列を代入します。
配列の変数定義int型とString型
int[]
String[]
int型は数値を要素に持つ配列です。
String型は文字列を要素に持つ配列です。Stringの頭文字は大文字です。
int型の配列の例
int[] numbers = {1,5,10};
String型の配列の例
String[] names = {"佐藤","鈴木","高橋"};
配列の要素には、前から順に「0, 1, 2・・・」と数字が割り振られています。
配列の各要素は、配列名[インデックス番号]とすることで取得することができます。
【例】
String[] names = {"佐藤","鈴木","高橋"};
System.out.println("名前は"+names[0]+"です");
配列の要素の上書き
String[] names = {"佐藤","鈴木","高橋"};
System.out.println("名前は"+names[0]+"です");
names[0] = "上野";
System.out.println("名前は"+names[0]+"です");
names[インデックス] = "要素";で上書きできます。
上記の例だとコンソールの出力結果は佐藤と上野になります。
配列の繰り返し処理
for文を使って繰り返し処理ができます。
【例】
String[] names = {"佐藤","鈴木","高橋"};
for (int x = 0;x < 3;x++){
System.out.println("名前は"+names[x]+"です");
}
上記の例だとインデックスの0から2までの3つをnamesから呼び出しています。
length
lengthとは要素の数を数えるという機能です。
上記のfor文とlengthを使って、繰り返し処理ができます。
先ほどのfor文の条件式x<3を配列.lengthにすることで書き換えることができます。
【例】
String[] names = {"佐藤","鈴木","高橋"};
for (int x = 0;x < names.length;x++){
System.out.println("名前は"+names[x]+"です");
}
上記のように記述すれば、配列の要素数を気にする必要がなくなります。
なので、こちらの方が使いやすいと思います。
ですが、もっとシンプルなfor文もあります。それは配列拡張for文です。
配列拡張for文
for文は配列用に拡張for文があります。これを使えば、先ほどのfor文をよりシンプルに書くことができます。
for (データ型 変数名:配列名) {
繰り返す処理;
}
【例】
String[] names = {"佐藤","鈴木","高橋"};
for (String name:names){
System.out.println("名前は"+name+"です");
}
上記の例だとStringがデータ型、nameが変数名、namesが配列名です。
先ほどまでのlengthを使ったfor文と比較して、拡張for文では変数に配列の要素自体が代入されます。
私が理解するためにだらだら書きましたが、これが一番使いやすいかなと思います。