2014-05-17 106 views
0
for (int i = 0; i < 90; i++) 
      { 
      comboBox1.Items.Add("Reduced by: " + i.ToString()); 
      } 

這會將90個項目添加到comboBox1。 我要添加9個項目10,20,30,40,50,60,70,80,90如何將int項添加到組合框的10跳中?

我怎樣才能把它添加到10的跳躍呢?

+1

你知道聲明是什麼,如果一個,對不對?你也許聽說過模數?你知道可以將這些想法混合起來,對嗎? (或者只是做+10,是啊,哈哈)最近你問了非常基本的問題,你爲什麼不自己嘗試,閱讀一個基本的教程或尋找SO上的現有答案。 –

+2

@ Pierre-LucPineault:雖然你*可以*用模來做,這不是最簡單的方法,國際海事組織... –

+1

@JonSkeet是的,這是相當晚,我的大腦有點緩慢:(+10是 –

回答

3
for (int i = 10; i <= 90; i+=10) 
     { 
     comboBox1.Items.Add("Reduced by: " + i.ToString()); 
     } 
2

給這樣的嘗試:

for (int i = 10; i <= 90; i=i+10) 
      { 
      comboBox1.Items.Add("Reduced by: " + i.ToString()); 
      } 

或:

for (int i = 10; i < 100; i=i+10) 
       { 
       comboBox1.Items.Add("Reduced by: " + i.ToString()); 
       } 
+1

這兩個都不行,你的for循環裏沒有任何賦值,它總是i + 10,但我從來沒有設置過這個值。它甚至沒有編譯的方式。 – SharpShade

+0

謝謝我錯過了它,但糾正了它.... –

0

這是一個明確的,但長期的版本。請注意,這裏使用一個額外的輔助變量,並循環90倍,在你原來的做法,這是不一樣的MR100答案高效:

int cnt = 0; 
for (int i = 1; i <= 90; i++) 
{ 
    cnt++; 
    if (cnt == 10) 
    { 
     comboBox1.Items.Add("Reduced by: " + i.ToString()); 
     cnt = 0; //Reset 
    } 
} 
+0

爲什麼downvote ??它的工作原理和清楚。我知道代碼可以縮短,但這並不意味着它不是OK! – JohnSaps

+2

它不是高性能的,你的循環轉換次數比使用for循環的功率多9倍,使我增加10倍。此外,你得到了每個循環的if。當然這不是太多的性能浪費在正常情況下,但對於高P性能的應用程序,這是一個非常糟糕的方法。 – SharpShade

+1

ots清楚,需要跳10,那麼爲什麼迭代90次而不是9次 –