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) } }
型の名前 変数名;変数への代入, 参照をおこなう前にその変数に型を対応づける. 型とは,プ ログラムが扱う値を性質によって分類したもので多くのプログラミング言語で 定義されている概念である.Java言語では型は3種類に分類される.
変数名 = 式という式(この例では「1」という定数だが, 変数, 演算式等の値を生成するさ まざまなものが書ける)を実行すると, 副作用(side effect)としてその変数に 対応する箱に式の値が入る. 宣言と代入を同時におこなうこともできる. たと えば, (1),(2)はまとめて,
int i=1;のようにも書ける.
i=i+1;といった表記である. Javaでの '=' は等しいという「関係」を表すのではな く, 右辺の値を計算して左辺の変数に代入するという「操作」を表すことに慣 れる必要がある.
変数名の付け方には,
プログラミング言語の中には,変数の宣言がいらない(省略可能な)言語もあ る(BASIC, FORTRAN, Perlなど).このような言語だと,短くかけるのはたしか ですが,変数名のスペルミスの検出や型チェックなどの観点から,大規模なプ ログラムを作成するための言語では変数宣言はあった方が良いという見方が主 流になっています.