データの記憶(変数)

プログラム中では, データをたくわえて置くための箱のようなものを使うこ とができる. これが, 変数である. 変数に対する操作には「宣言(Declaration)」, 「代入(Assignment)」, 「参照(Reference)」の3種類がある. 次のサンプルプ ログラムを例にそれぞれの説明をする.
class VarTest {
  public static void main(String[] args){
    int i; // (1)
    i=1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
    i=i+1; // (2)
    System.out.println( i + " の2乗は " + (i*i) + "です"); // (3)
  }
}
  1. 宣言(Declaration)
    型の名前 変数名;
    
    変数への代入, 参照をおこなう前にその変数に型を対応づける. 型とは,プ ログラムが扱う値を性質によって分類したもので多くのプログラミング言語で 定義されている概念である.Java言語では型は3種類に分類される. 変数の 名前は英小文字で始めるのが推奨される. ','で結んで, 複数の宣言をおこな うこともできる.
  2. 代入(Assignment)
      変数名 = 式
    
    という式(この例では「1」という定数だが, 変数, 演算式等の値を生成するさ まざまなものが書ける)を実行すると, 副作用(side effect)としてその変数に 対応する箱に式の値が入る. 宣言と代入を同時におこなうこともできる. たと えば, (1),(2)はまとめて,
     int i=1;
    
    のようにも書ける.
  3. 参照(Reference)
    '='の左辺以外で変数が現れる時は, 変数への参照となる. 実行の時点でその 変数に対応する箱に入っている値が使われる.
数学での '=' に馴染みの深い人がとまどうのが,
    i=i+1;
といった表記である. Javaでの '=' は等しいという「関係」を表すのではな く, 右辺の値を計算して左辺の変数に代入するという「操作」を表すことに慣 れる必要がある.

変数名の付け方には,

という規則がある.
プログラミング言語の中には,変数の宣言がいらない(省略可能な)言語もあ る(BASIC, FORTRAN, Perlなど).このような言語だと,短くかけるのはたしか ですが,変数名のスペルミスの検出や型チェックなどの観点から,大規模なプ ログラムを作成するための言語では変数宣言はあった方が良いという見方が主 流になっています.


次に進む