スッキリわかるJava入門 第4章 配列 メモリと変数・配列
第4章 配列 メモリと変数・配列
メモリと変数
- コンピュータは使用するデータをメモリに記録する。
- メモリの中は基盤のように区画整理されており、各区画には住所(アドレス)が振られている。
- 変数を宣言すると、空いている区画(どこが選ばれるか分からない)を変数のために確保する(変数の型によって何区画を使用するかは異なる)。
- 変数に値を代入する=確保しておいた区画に値を記録すること。
メモリと配列
- 変数宣言によりint[]型変数が、new演算子により配列の実体(要素の集まり)がメモリ上の区画に作成される。
- 配列変数には5つの要素まるごとではなく、「最初の要素のアドレス」が代入される。
- int[ ] score = new int[5]; を実行した時の、メモリ上のようす
①int型の要素を5つ持つ配列がメモリ上に作成される。
②int[ ]型の配列変数scoreがメモリ上に作成される。
③scoreに配列の先頭要素のアドレスが代入される。
- プログラムからscore[n]と指定されたら
①scoreの中に入っている番地(=8832)を取り出し、配列(先頭要素)を見つける。
②見つけた配列の先頭要素からn個後ろの要素の区画を読み書きする。
- 配列変数scoreは「配列の実体は8832番地にあります」と指し示す動作をしている。このことを「参照」と呼ぶ。
- 参照型(reference type):具体的なデータではなく、メモリ上の番地を代入する変数の事。
- 基本型:intやbooleanのような具体的なデータを代入する変数の事。