下面是我試圖用來搜索arraylist的一段代碼。我用不同的形式使用了與此非常相似的代碼,並且它已經工作。但是這裏沒有。它旨在搜索frmMain中的Arraylist中的客戶號碼,然後搜索用戶輸入的客戶帳號。但由於某種原因,它幾乎就像跳過第二條if語句並轉到底部的錯誤消息。正在搜索Arraylist不工作
ArrayList的是在frmMain,然後有客戶賬戶及交易類。在Customer中有另一個ArrayList存儲賬戶,然後在Account Class中有一個ArrayList存儲客戶賬戶的交易。
foreach (Customer a in frmMain.bankDetails)
{
if (a.getCustomerNumber().ToUpper().Equals(custSearch))
{
foreach (Account b in a.Accounts)
{
if (b.getAccNumber().Equals(searchString))
{
txtSearch.BackColor = Color.PaleGreen;
txtAccSortCode.Text = b.getAccSort();
txtAccNumber.Text = Convert.ToString(b.getAccNumber());
txtAccNickName.Text = b.getAccNick();
txtAccDate.Text = b.getAccDate();
txtAccCurBal.Text = Convert.ToString(b.getAccCurBal());
txtAccOverDraft.Text = Convert.ToString(b.getAccOverDraft());
txtNumTrans.Text = Convert.ToString(b.getAccNumTrans());
found = true;
break;
}
}
}
}
任何幫助表示讚賞!
您是否附加了調試器並逐步完成代碼?你可能會更快地找到答案! – 2011-03-23 16:56:08
是'b.getAccNumber()'返回一個int而'searchString'是一個字符串? – SwDevMan81 2011-03-23 16:57:16
考慮切換到'列表'。 –
2011-03-23 16:58:51