2014-10-26 88 views
0

我需要創建一個字符串,直到我得到一個*字符,並且我希望這樣做而不必將條件(c!='*')加倍。我試過while(){...}do {...} while(),但是*仍然被添加。按時停止while功能

下面是一段代碼:

while (c!='*') 
      { 
       c=dec.checkChar(dec.extractCode(t, d)); 
       d=d.shiftRight(7); 
       if (c!='*')decoded+=c; 
      } 
+0

你使用什麼語言? – 2014-10-26 19:27:28

+0

@MyDog它是Java。抱歉,現在添加了標籤。 – 2014-10-26 19:30:14

回答

1
while(true){ 
      c=dec.checkChar(dec.extractCode(t, d)); 
      if(c=='*'){ 
       break; 
       } 
      d=d.shiftRight(7); 
      decoded+=c; 
      } 
0

不要在外環檢查後立即改變c。相反,重組你的邏輯來處理你剛剛檢查的c不是一個退出條件,並且使得更新c你做的最後一件事。