@blog.justoneplanet.info

日々勉強

Javaの配列

■宣言

以下のようにして配列を宣言することができる。

public class HelloWorld
{
    public static void main(String[] args)
    {
        int ary[] = new int[3];
        ary[0] = 3;
        ary[1] = 1;
        ary[2] = 4;
        for(int i = 0; i < ary.length; i++){
            System.out.println(Integer.toString(ary[i]));
        }
    }
}

上述では、長さ3のint型の配列が生成されている。また、lengthプロパティに配列の長さが格納されている。

文字列の場合

以下のように、上述と全く変わらない。

public class HelloWorld
{
    public static void main(String[] args)
    {
        String ary[] = new String[3];
        ary[0] = "hoge";
        ary[1] = "fuga";
        ary[2] = "piyo";
        for(int i = 0; i < ary.length; i++){
            System.out.println(ary[i]);
        }
    }
}

二次元配列

以下のようにして二次元配列を生成することができる。

public class HelloWorld
{
    public static void main(String[] args)
    {
        String ary[][] = new String[2][2];
        ary[0][0] = "hoge";
        ary[0][1] = "fuga";
        ary[1][0] = "piyo";
        ary[1][1] = "baca";
        for(int i = 0; i < ary.length; i++){
            for(int i2 = 0; i2 < ary[i].length; i2++){
                System.out.println(ary[i][i2]);
            }
        }
    }
}

ちなみに以下のように配列はクローンが作られるわけではないので注意すること!

public class HelloWorld
{
    private static String[][] convert(String ary[][])
    {
        for(int i = 0; i < ary.length; i++){
            for(int i2 = 0; i2 < ary[i].length; i2++){
                if(ary[i][i2] == "hoge"){
                    ary[i][i2] = "aho";
                }
            }
        }
        return ary;
    }
    
    public static void main(String[] args)
    {
        String ary[][] = new String[2][2];
        ary[0][0] = "hoge";
        ary[0][1] = "fuga";
        ary[1][0] = "piyo";
        ary[1][1] = "baca";
        String ary1[][] = convert(ary);
        for(int i = 0; i < ary.length; i++){
            for(int i2 = 0; i2 < ary[i].length; i2++){
                System.out.println(ary[i][i2]);
            }
        }
        for(int i = 0; i < ary1.length; i++){
            for(int i2 = 0; i2 < ary1[i].length; i2++){
                System.out.println(ary1[i][i2]);
            }
        }
    }
}
/*
aho
fuga
piyo
baca
aho
fuga
piyo
baca
*/

コメントはまだありません»

No comments yet.

RSS feed for comments on this post.TrackBack URL

Leave a comment