簡體   English   中英

我的中斷代碼不會破壞我的代碼

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM