Top > Java > 配列


配列の宣言

Javaでは、配列を使用する場合、

1.配列を宣言する

2.配列要素を確保する

という作業が必要になります。

文法
int test[];        /* 配列の宣言     */
test = new int[5]; /* 配列要素の確保 */
要素数
Java の配列の添え字は、C言語と同じように0から始まります。 つまり、最大の要素番号は「要素数-1」です。 例えば、test = new int[5]; で宣言した場合、 test[0] ~ test[4] までの5つを使用することが可能です。
利用法
文法は、
配列変数名[添字] = 式;
と、いたって簡単である。
すべてを展開すべてを収束
  1
  2
  3
  4
  5
  6
  7
  8
  9
 
 
 
 
 
 
 
 
 
/* 例 */
int test[];
test = new int[5];
 
test[0] = 80;
test[1] = 60;
test[2] = 50;
test[3] = 0;
test[4] = 75;

配列の利用

すべてを展開すべてを収束
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 
-
|
-
|
|
|
|
|
|
|
|
|
|
-
|
|
!
!
!
class Sample
{
  public static void main(String args[])
  {
    int test[];
    test = new int[5];
 
    test[0] = 80;
    test[1] = 70;
    test[2] = 60;
    test[3] = 50;
    test[4] = 40;
 
    for(int i=0; i < 5; i++)
    {
      System.out.println((i+1) + "番目の配列の中身は" +
          test[i] + "です");
    }
  }
}
注意点
原則的に、配列の大きさを超えた要素は利用することはできません。 例えば、test = new int[5]; で確保した配列を、 test[10] = 100; と使用することはできません。 コンパイルが通ったとしても、メモリを破壊することなり、 正しく動作しなくなります。

様々な配列の記述

配列の準備
/* その1 */
int test[];
test = new int[5];

/* その2 */ 
int test = new int[5];
配列の初期化
下記のように配列を宣言すると、初期化も一緒に行ってくれます。
int test = {80, 70, 60, 50, 40};

配列変数

Javaには、int[] 型という型が存在します。 例えば、

int test[];
test = new int[5];

と、

int[] test;
test = new int[5];

は等価です。 そして、配列内の各要素を簡単にコピーすることができます。

すべてを展開すべてを収束
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 
-
|
-
|
|
|
|
|
|
|
|
|
|
!
!
class Sample
{
  public static void main(String args[])
  {
    int test1[];
    test1 = new int[3];
 
    test1[0] = 80;
    test1[1] = 70;
    test1[2] = 60;
 
    int test2[];
    
    test2 = test1;
  }
}

プリント文などで、上記プログラムの test2 の中身を表示させてみてください。 見事にコピーされているはずです。 メモリマップ上で説明すると、test1[0] と test2[0]、 test1[1] と test2[1]、test1[2] と test2[2]、が同じ番地を指していることになります。 つまり、C言語で言うところの、ポインタに相当します。

配列の応用

便利なメソッド
配列変数名.length
とすると、配列の長さ(大きさ/要素数)を知ることができます。
すべてを展開すべてを収束
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 
-
|
-
|
|
|
-
|
!
!
!
class Sample
{
  public static void main(String args[])
  {
    int test[] = {80, 70, 60, 50, 40};
 
    for (int i = 0; i < test.length; i++)
    {
      System.out.println((i+1) + "番目の中身は" + test[i] + "です");
    }
  }
}

多次元配列

Javaでは、配列の要素を更に配列とすることで、2次元以上の 配列を扱うことができます。 例えば、2次元配列であれば、下記のようになります。

型名 配列変数名[][];
配列変数名 = new 型名[要素数][要素数];
すべてを展開すべてを収束
  1
  2
  3
  4
  5
  6
  7
 
 
 
 
 
 
 
/* 初期化 */
/* 2×3行の配列確保と、初期化 */
int test[][] = { {80, 70}, {60, 50}, {40, 30} };
 
/* length メソッド */
test.length;        /* 配列全体の大きさを表す   */
test[添え字].length /* 各配列要素の大きさを表す */

リロード   凍結解除 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Mon, 03 Jun 2019 14:37:49 UTC (912d)