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

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

為什么if后面不加大括號就報錯了

http://img1.sycdn.imooc.com//566a30ad0001b2a304490329.jpg

請問為什么會報錯,然后我在if后面加了大括號就不報錯了

正在回答

5 回答

if后面如果只跟一條語句是可以的, 這里報錯是因為你聲明了變量cat, 而變量必須要有作用域,這里的大括號就是用來限定cat的作用域的

Demo d;

?if(true)?

? ? d = new Demo();

這樣因為上面已經確定該變量的作用域了,所以可以直接這樣寫,不報錯


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

慕運維7819121 提問者

應該只有你的答案是對的,然而還是沒太看懂= =
2015-12-12 回復 有任何疑惑可以回復我~
#2

慕運維7819121 提問者

是不是說,如果不加大括號,這個cat就是局部變量,就和if語句沒有關系了,加了大括號,這個cat在if語句的塊內,才符合要求?
2015-12-12 回復 有任何疑惑可以回復我~
#3

Jason333 回復 慕運維7819121 提問者

你可以這么理解,不加大括號Java虛擬機就不能確定這個cat變量的作用范圍是在if里還是main函數里
2015-12-14 回復 有任何疑惑可以回復我~

頂三樓的

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

if判斷語句的格式就是if(){?}

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

因為后面有else語句,如果沒有就不會報錯

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

if是一個判斷語句,根據條件判斷內容,而且判斷語句的格式就是if{ },括號里面添加內容。

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

舉報

0/150
提交
取消

為什么if后面不加大括號就報錯了

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

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

幫助反饋 APP下載

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

公眾號

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