我正在嘗試爲我創建的項目創建一種設置系統,但是我遇到了一些問題。我試圖使用一個字符串(考慮到這些設置後來必須保存到文本文件)作爲轉換布爾值。所以,我需要能夠在true和false之間切換這個字符串。我認爲以下方法可行,但由於某種原因,它始終設置爲true,無論如何。就我所知,這是代碼中設置變量的唯一位置。Make-shift字符串布爾值?
我不知道爲什麼下面的代碼不應該工作,我做了徹底的搜索無濟於事。
if("true".equals(settings[0]))
settings[0] = "false"; //This is *always* skipped
else if("false".equals(settings[0]))
settings[0] = "true";`
因此,我來過這裏。
當某些數據是布爾值時,應該使用布爾值。保存爲字符串時,將此布爾值轉換爲字符串。加載時,將字符串轉換爲布爾值。如果遵循此規則,您的代碼將更具可讀性,更高效且更健壯。 – 2013-04-08 20:41:15
你是否檢查過'settings [0]'實際上包含了什麼?這是編譯器閃耀的時間:) – Maroun 2013-04-08 20:41:43
只要'settings [0]'是「true」或「false」,這個片段就能正常工作。 'settings'的初始值是多少? – iamnotmaynard 2013-04-08 20:42:44