2016-04-09 8 views
1

私は大学で科目としてJavaを勉強しています。このコードをシートに入れて出力し、コードを実行して(11)の結果を得ました。誰かがこのJavaコードが何をしているのか説明できますか?

int i; 
for (i=1; i<10; i+=2); 
System.out.println(i); 

しかし、実際にはどうなりますか?

+2

はセミコロンに注意してください。 –

+0

1つの行を持つループ本体であっても、常に中かっこを使用するための最良の引数の1つです。 IntelliJはこの大騒ぎをしただろう。 – duffymo

答えて

6

最初に始めて、iという名前の変数を宣言してください。intです。 i2iに(1、3、5、7、9、11)を追加少ない10以上である

int i; 

は、今度はループ、値1iを初期化しなければなりません。 1110以上であるので、ループを止めてください。

for (i=1; i<10; i+=2); 

最後に、プリントi(11)。

System.out.println(i); 
0

コードは(私は、各セクションが何を表すコメントが含まれます)このように、より明確に記述できます。

//declare a number variable 
int i; 

//this is a for loop 
//the first part sets i to 1 to begin with 
//the last part adds 2 to i each time 
//and the middle part tells it how many times to execute 
//in this case until i is no longer less than 10 
for (i = 1; i < 10; i+=2); 

//this prints out the final value, which is 11 
System.out.println(i); 

だからあなたのコードが1で私を開始し、ループ ますI = 3 、I = 5、など私はもはやとき I = 9たまたま10未満になるまで、私は11 を=しない、プログラムは停止し、あなたは私の

1

誰かが卑劣されている。最終的な値を印刷しますここでは、それはnorrmallyインデントレイアウトます方法は次のとおりです。

int i; 
for (i=1; i<10; i+=2) 
    ; 
System.out.println(i); 

int i;はタイプintiという名前の変数を宣言します。

for (i=1; i<10; i+=2) 
    ; 

1iを設定することによって開始し、次いでiたびi` 10, adding 2 to未満であるwhileループforループです。 forの後の​​セミコロンは、no-op、空文です。

このバージョンを試してみて、何が起こるかを参照してください。ためた後

int i; 
for (i=1; i<10; i+=2) 
    System.out.println(i); 
System.out.println(i); 
関連する問題