class SampleMethod { void A_multi_3( int x ) { x *= 3; } int B_multi_3( int x ) { x *= 3; return x; } } class CheckSample { public static void main( String[] args ) { SampleMethod c = new SampleMethod(); int x = 1; c.A_multi_3( x ); System.out.println( "Aさんメソッドの結果: " + x ); x = 1; System.out.println( "Bさんメソッドの結果: " + c.B_multi_3( x ) ); } }プログラムを実行すると、結果はどうなるでしょうか? また、その理由は? (答えは、次回の Java の Tips で ・・・) |
for( i = 0; i < sorted.length && sorted[i] >= 80; i++ ) ; /* 繰り返しの度に実行される(何もしない) */ System.out.println( sorted[i] + "点" ); /* forの後1度だけ実行 */うっかりセミコロンをつけたので、System.out.println 行は、繰り返しを抜けた後に実行されます。結局 forでは、sorted配列を調べ、点数が 80点未満になるところまで i を進めるだけです。その後で sorted[i] を表示するので、78点と出力されたのです。
このクイズは間違えて空文を入れた例なので、セミコロン ; を取るとうまくいきますが、繰り返しの本体でわざと空文を使うケースもあります。