前に置くか後ろに置くか
それだけで結果が変わる場合がある、前のPerlの関係で書いた記憶が再度書いておこう。
まずはソースコードがポイントだ、ぶっちゃけ長ったらしく書くのは嫌いだからポイントだけをまとめておきたい。
class java_study_8{
public static void main(String args[]){
int nom1,nom2,nom3 ;
nom1 = 5 ;
nom2 = nom1++ ;System.out.println("nom1 = " + nom1) ;
System.out.println("nom2 = " + nom2) ;
まずはこのコードの結果だ、結果は次の通りだ
nom1 = 6
nom2 = 5
どうやら、nom2にはnom1に1足す前の値がわたってるねぇ。
だったらこうしたらどうだろうか、続きだよ。
だから1つ余分に変数を宣言して閉じてないんだから
nom1 = 5 ;
nom3 = ++nom1 ;System.out.println("nom1 = " + nom1) ;
System.out.println("nom3 = " + nom3) ;
}
}
こっちの実行結果はどうだろうか?
nom1 = 6
nom3 = 6
今度は「nom3にnom1に1足した値」がわたってるね、とりあえずまとめるぞ
memo
- nom1++ => 加算される前の値が渡ってしまう
- ++nom1 => 加算された値がわたる