亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

break章節的一個問題

public class HelloWorld {
??? public static void main(String[] args) {
??
??
??int sum = 0;
??
??
??for (int i = 1; i <= 10; i++) {
???
???
???sum = sum + i;
???
???
???
????
????System.out.print("當前的累加值為:" + sum);
???if (sum>20) {?
???
????break;
???}
??}
?}
}

輸出結果為當前的累加值為:1當前的累加值為:3當前的累加值為:6當前的累加值為:10當前的累加值為:15當前的累加值為:21

為什么會這樣??

正在回答

3 回答

因為你的System.out.print("當前的累加值為:" + sum);這一句在for循環里面,第一次i=1;輸出累加值sum=0+1=1;如果累加值大于20就進入if條件語句,沒有大于,所以再執行一次for循環,此時i=2,i<=10,滿足條件,進入循環sum=1+2=3;然后又輸出累加值為3;之后就是一直輸出到輸出為21的時候就進入了if條件判斷,然后break的作用是退出指定循環也就是for循環。

public class HelloWorld {

? public static void main(String[] args) {
? ? ?int sum = 0;

? ? ?for (int i = 1; i <= 10; i++) {
? ? ? ? sum = sum + i;
??? ? ? ? ?if (sum>20) {?
? ? ? ? ? ? ? ? System.out.print("當前的累加值為:" + sum); ?

? ? ? ? ? ? ? ? ?break;

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}


1 回復 有任何疑惑可以回復我~
#1

寶慕林6422410 提問者

多謝詳細解釋
2017-11-22 回復 有任何疑惑可以回復我~

大于20的時候輸出,為什么不能選擇28或30或40的時候輸出,而是一旦超過20就輸出呢

0 回復 有任何疑惑可以回復我~

你的問題是指不應該打印“當前的累加值為:21”嗎?如果是的話,if條件和打印順序換一下即可

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第一季(IDEA工具)升級版
  • 參與學習       1167581    人
  • 解答問題       18748    個

0基礎萌新入門第一課,從Java環境搭建、工具使用、基礎語法開始

進入課程

break章節的一個問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號