welcome: please sign in
location: "配列の宣言と初期化"の差分
5と10のリビジョン間の差分 (その間の編集: 5回)
2011-09-22 02:55:27時点のリビジョン5
サイズ: 1538
編集者: masahiko
コメント:
2011-09-26 06:23:11時点のリビジョン10
サイズ: 2594
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 39: 行 39:
----
=== 例 ===
配列 a を宣言すると、変数 a の値を保持する領域がとられる。
 {{{
 int[] a;
 }}}
 . {{attachment:hairetu1.png}}
new により指定の大きさの配列が作られる。
 {{{
 new int[100];
 }}}
 . {{attachment:hairetu2.png}}
作られた配列オブジェクトのアドレスを変数aに代入することで、aを用いて配列を利用できるようになる。
 {{{
 int[] a;
 a = new int[100];
 }}}
 . {{attachment:hairetu3.png}}

宣言文と実行文
 * int[] a; は宣言文です。
 * a = new int[100]; は実行文です。
配列を実際に割り当てるのは実行文の方です。
したがって、配列の大きさは実行時に指定できることが分かります。
行 43: 行 67:
配列の宣言と割り当てを一度に行う書き方もこの構文に対応します。 配列の宣言と割り当てを一度に行う構文もあります。
行 45: 行 69:
 {{attachment:hensu6.png}}
行 49: 行 75:
----
変数宣言の構文は次のようになります。

 {{attachment:hensu6.png}}
行 60: 行 82:
配列 k の大きさは k.length で知ることができます。
----
=== 補足 ===
配列の宣言は
 {{{
 int[] a;
 }}}
ではなく
 {{{
 int a[];
 }}}
と書く方法もあります。

1番目の書き方は'''int配列型の変数a'''、
2番目の書き方は'''int型aの配列'''
と読めます。
どちらでもかまわないのですが、1番目の方がなんとなくオブジェクトっぽくて、
説明の図とあっているように見えませんか。

配列の宣言と初期化


配列の宣言

変数の宣言は次のような形式で行いました。

  • hensu1.png

配列も同様の形式で宣言できます。

配列の型は

  • 構成要素の型の後ろに [ ] をつけたものです。

  • double型の配列 x の宣言
  • int型の配列 aとb の宣言
       1  double[] x;
       2  int[] a, b;
    


配列の割り当て

配列の割り当て(作成)はnewを使って行います。

  • newは新しいオブジェクトを作るときに使います。

  • double型の配列 x に1000個からなる配列を割り当てる。
       1  double[] x;
       2  x = new double[1000];
    
  • int型の配列 a に100個からなる配列を、b に200個からなる配列を割り当てる。
       1  int[] a, b;
       2  a = new int[100];
       3  b = new int[200];
    


配列 a を宣言すると、変数 a の値を保持する領域がとられる。

  •  int[] a;
  • hairetu1.png

new により指定の大きさの配列が作られる。

  •  new int[100];
  • hairetu2.png

作られた配列オブジェクトのアドレスを変数aに代入することで、aを用いて配列を利用できるようになる。

  •  int[] a;
     a = new int[100];
  • hairetu3.png

宣言文と実行文

  • int[] a; は宣言文です。
  • a = new int[100]; は実行文です。

配列を実際に割り当てるのは実行文の方です。 したがって、配列の大きさは実行時に指定できることが分かります。


配列の宣言と初期化

配列の宣言と割り当てを一度に行う構文もあります。

  • hensu6.png

  •    1  double[] x = new double[1000];
    


配列の初期値

配列の初期値は次のように記述して指定できます。

  •    1  int[] k = { 5, 3, 10, 21, 2 };
    

この例では、大きさ5の配列が作られ、k[0]=5; k[1]=3; ... に初期化されます。


補足

配列の宣言は

  •  int[] a;

ではなく

  •  int a[];

と書く方法もあります。

1番目の書き方はint配列型の変数a2番目の書き方はint型aの配列 と読めます。 どちらでもかまわないのですが、1番目の方がなんとなくオブジェクトっぽくて、 説明の図とあっているように見えませんか。

配列の宣言と初期化 (最終更新日時 2011-10-12 00:25:22 更新者 masahiko)