コンテンツにスキップ

配列

配列の基本

Javaには、配列というものがあります。配列は一つの変数に複数の値を組み込めるのでとても便利です。
配列の宣言はデータ型に配列の添え字を入れる[]を追加して書きます。( [] のセットです)
Javaには配列のほかにリスト型などの似た仕組みがあります。

String scola_name[] =  {"Java","Linux","Network","C","AI"};

//or ...

String kamoku = new String[5]; // ここで、「5」は要素の数
kamoku = ["国語","数学","英語","社会","理科"];

System.out.println(kamoku[0]);

Test

import java.util.Arrays;
public class ArrayTest{
    public static void main(String[] args){
        // 宣言
        String scola_name[] = {"Java","Linux","Network","C","AI"};

        // 宣言
        String[] kamoku = new String[5]; // ここで、「5」は要素の数
        // 代入
        kamoku[0]="国語";
        kamoku[1]="数学";
        kamoku[2]="英語";
        kamoku[3]="社会";
        kamoku[4]="理科";

        //配列の大きさを確認するメンバ変数 ARRAY.length
        int kamoku_nagasa = kamoku.length;
        System.out.println("Len -> "+ kamoku_nagasa);

        // 出力
        for(int i=0;i < kamoku_nagasa; i++)
            System.out.println("kamoku["+i+"] ->" + kamoku[i]);

        // 拡張forというやり方 添え字はない。
        for(String i : scola_name)
            System.out.println(i);

        // 無理やりLAMDAスタイル
        // java.utils.Arrays.asListでList型 -> forEachでグルグル。
        Arrays.asList(kamoku).forEach(System.out::println);

    }

}

2次元配列

配列の中に配列を組み込むことができます。

public class ArrayTest2D {
    public static void main(String[] args){
        String meta[] = {"No.","Name","Development","Teaching by"};
        String j17273[] = {"J17273","Nakagawa","Network  - CCN","Masaki Hanada","B4"};
        String g19006[] = {"G19006","Sano","Security - Phishing","Masaki Hanada","M2","<-- Means: Master"};
    //------
        String teachingMember[][] = {meta,j17273,g19006};
    //-----
        // もしくは
        /*
        String teachingMember[][] =
            {
                {"No.","Name","Development","Teaching by"},
                {"J17273","Nakagawa","Network  - CCN","Masaki Hanada"},
                {"G19006","Sano","Security - Phishing","Masaki Hanada"}
            };
        */
        for(int y=0; y < teachingMember.length;y++){
            System.out.print("| y="+y+" |");
            for(int x=0; x < teachingMember[y].length;x++){
                // [ x ] はエラー防止なので、適宜空白抜いてください
                System.out.print("\t x="+x+":"+teachingMember[y][x]);
            }
            System.out.println();
        }
    }
}

結果

| y=0 |  x=0:No.     x=1:Name     x=2:Development          x=3:Teaching by
| y=1 |  x=0:J17000  x=1:Nakagawa x=2:Network  - CCN       x=3:Masaki Hanada  x=4:B4
| y=2 |  x=0:G19000  x=1:Sano     x=2:Security - Phishing  x=3:Masaki Hanada x=4:M1 x=5:<-- Means Master

検証

  • 身の回りの何かで作ってみる。
  • 2次元以上は?
  • FOR以外で回しとる方法。拡張ForやWhile、
  • まわすとき、XとY逆にすると?
  • \tとは?

などなど。


最終更新日: 2021年4月30日