スポンサードリンク

【Java】lengthで配列の個数(要素数)を取得してfor構文で出力

lengthを利用して配列の個数(要素数)を取得して、for構文で出力する方法を説明します。

1.配列のデータをfor構文で出力

これまで配列のデータを出力するために

System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);


のように一つずつ出力処理を書いていましたが、for構文を用いればかなりスマートに配列のデータを出力できます。

では、「Lesson039.java」というファイルを作成し、以下のJavaプログラムを入力・保存してください。

public class Lesson039{
    public static void main(String args[]){
        //5個のデータを代入できる配列arrを作成
        int arr[] = new int[]{100, 200, 300, 400, 500};
        //for構文で配列のデータを出力
	for(int i = 0; i <=4; i++){
		System.out.println(arr[i]);
	}
    }
}

 

 

【プログラムの説明】

「for(int i = 0; i<=4; i++)」で配列の個数分繰り返し処理を行います(「i<=4」で配列の個数を設定 ※配列の個数は0から数えます)。

そして「System.out.println(arr[i])」で変数iが0のときarr[0]が、変数iが1のときarr[1]が・・・出力されます。

そして以下のようにコンパイル・実行してください。

C:\Users\ysk\Desktop\java>javac Lesson039.java

C:\Users\ysk\Desktop\java>java Lesson039
100
200
300
400
500

このようにすれば配列のデータが100個あろうが1000個あろうがfor構文一つで出力できるようになります。

2.lengthで配列の要素数を取得

lengthフィールドというものを用いれば、配列の要素数を簡単に調べることができます。使い方は簡単で、配列名のあとに「.length」を付けるだけです。

配列名.length

では確認します。「Lesson040.java」というファイルを作成し、以下のJavaプログラムを入力・保存してください。

public class Lesson040{
    public static void main(String args[]){
        //5個のデータを代入できる配列arrを作成
        int arr[] = new int[]{100, 200, 300, 400, 500};
        //配列arrの要素数を出力
        System.out.println(arr.length);
    }
}

 

 

そして以下のようにコンパイル・実行してください。

C:\Users\ysk\Desktop\java>javac Lesson040.java

C:\Users\ysk\Desktop\java>java Lesson040
5

3.lengthとfor構文の合わせ技

ここまでくれば「lengthとforを組み合わせれば配列の出力がめっちゃ楽じゃね?」とお気づきかもしれませんがその通りです。

「Lesson041.java」というファイルを作成し、以下のJavaプログラムを入力・保存してください。

public class Lesson041{
    public static void main(String args[]){
        //5個のデータを代入できる配列arrを作成
        int arr[] = new int[]{100, 200, 300, 400, 500};
        //lengthとforで配列のデータを全部出力
	for(int i = 0; i<arr.length; i++){
		System.out.println(arr[i]);
	}
    }
}

 

そして以下のようにコンパイル・実行してください。

C:\Users\ysk\Desktop\java>javac Lesson041.java

C:\Users\ysk\Desktop\java>java Lesson041
100
200
300
400
500

Javaのプログラミング初期では配列を自分で作る上に個数(要素数)も少ないので、上の方法はあまり恩恵がないように感じるかもしれませんが、本格的にプログラミングをしていく中で、配列の個数がわからないことが多くあるので、lengthフィールドは必須知識です。

また、それを利用してfor構文で繰り返し処理を行うのも必須スキルです。

コメント

1:tr:2016/11/29 18:02:27

System.out.printkn(arr[1]); ??

コメントフォーム
お名前
コメント