爲什麼我的循環不能結束?爲什麼它會拋出異常呢?爲什麼此循環拋出System.ArgumentOutOfRangeException錯誤,而不是結束?
int i=0;
ArrayList item = new ArrayList();
ArrayList list = new ArrayList();
while (reader.Read())
{
item.Add(reader["element"].ToString());//keep data from my SQL
}
string chk2 = textBox1.Text.ToString();
for (i = 0; i <= item.Count;i++)
{
if ((item[i].ToString()).Contains(chk2))//this line got error.
{
list.Add(item[i]);
MessageBox.Show(item[i].ToString());
}
else
{
MessageBox.Show("Not Found");
}
}
錯誤注:類型System.ArgumentOutOfRangeException「未處理的異常出現在mscorlib.dll
其他信息:索引超出範圍。必須是非負數且小於集合的大小。
我該如何修復它?
「我的代碼是正確的。」這個陳述從來不是一個好的起點。 *始終*首先假定當某些事情不起作用時,代碼被破壞 - 實際上它在這裏。 –
對不起,我英語不好。 –
可能重複[什麼是「索引超出範圍」異常,以及如何解決它?](http://stackoverflow.com/questions/24812679/what-is-an-index-out-of-range -exception-how-do-i-fix-it) –