第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我應該在哪里初始化一個變量以在 IF 塊中工作?

我應該在哪里初始化一個變量以在 IF 塊中工作?

慕碼人2483693 2021-12-30 16:11:08
我正在嘗試在 CodingBat 上解決這個問題:如果給定的字符串包含 1 到 3 個 'e' 字符,則返回 true。到目前為止,我有這個解決方案,但如果我在 IF 塊內初始化了“numofe”整數,它就不會編譯,因為代碼的其他部分將無法使用它,反之亦然。那么我應該在哪里初始化一個變量,以便在代碼中的任何地方都可以訪問?謝謝你。public boolean stringE(String str) {  int numofe;  for(int x = 0; str.length() > x; x++){    if (str.charAt(x)=='e'){      numofe++;    }  }   return (numofe>0 && numofe<4);}
查看完整描述

2 回答

?
波斯汪

TA貢獻1811條經驗 獲得超4個贊

塊中的變量應該在使用之前進行初始化,用初始值初始化它們,它可以是任何允許的值。但是你不能在沒有先初始化它們的情況下使用它們。

int numofe=0;

這不會編譯numofe++;,因為numofe沒有在您的代碼中初始化


查看完整回答
反對 回復 2021-12-30
?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

如果你定義一個塊中的變量(if,while,for,等...),它是唯一已知的是塊內。如果你也想在它/它們之外使用它,你需要在對應的塊之前定義。

在這種情況下,您無法定義 insideif因為它不知道您return(numofe>0 && numofe<4。您需要在if和之前定義它for。

您還需要先對其進行初始化,因為它可能會在沒有被返回的情況下返回,因此: int numofe = 0;


查看完整回答
反對 回復 2021-12-30
  • 2 回答
  • 0 關注
  • 120 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

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

公眾號

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