[英]My break code doesn't break my code
參見下文。 我把它修好了。
是的,我已經問過這個問題,是的,人們建議我使用.equals,但它仍然無法正常工作。
我的問題是我的代碼不會中斷for循環。
for(int l=0; l<1000; l++){
if(settings.getString("note" + l, "").equals("")){
if(settings.getString("notelong" + l, "").equals("")){
editor.putString("note" + l, title.getText().toString());
editor.putString("notelong" + l, note.getText().toString());
editor.commit();
break; // This should break the loop BUT IT DOESN'T...
}
}
}
有什么建議么?
編輯:是的,它會中斷。 否則不會創建筆記
編輯2:對不起,這個for循環在另一個for循環中,我忘了打破第一個循環了...現在可以了! 謝謝你的幫助 :)
確保break;
線實際上正在運行。 兩個if語句在同一迭代中是否都等於true? 那可能是問題所在。
在Eclipse中使用調試器並逐步進行調試。
要么
settings.getString("note" + l, "")
要么
settings.getString("notelong" + l, "")
(或兩者都)不返回空字符串。 如果不是,則您的equals比較將返回false 。 在這種情況下,它永遠不會進入break語句。 為了使中斷邏輯起作用,兩個if語句都必須為true 。
刪除您的第一個if
,並檢查您的第二個if
是否在任何迭代中都等於true。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.