다음은 arraylist를 검색하는 데 사용하려고하는 코드입니다. 나는 다른 형식으로이 코드와 매우 비슷한 코드를 사용했으며 효과가 있었다. 그러나 여기에서는 그렇지 않습니다. frmMain의 Arraylist 내 고객 번호를 검색하기 위해 사용자가 입력 한 해당 고객 계정 번호를 검색합니다. 그러나 어떤 이유로 그것은 마치 두 번째 if 문을 건너 뛰고 맨 아래에있는 오류 메시지로 이동하는 것과 같습니다.Arraylist 검색 작동하지 않음
Arraylist는 frmMain에 있으며 고객 계정 및 거래에 대한 클래스가 있습니다. 고객에는 계정을 저장하는 또 다른 ArrayList가 있으며, 계정 클래스에는 고객 계정의 트랜잭션을 저장하는 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;
}
}
}
}
도움을 주시면 감사하겠습니다.
디버거를 연결하고 코드를 단계별로 실행 했습니까? 그렇게 빨리 답을 찾을 수있을 것입니다! –
'searchString'가 문자열 인 동안'b.getAccNumber()'는 int를 리턴합니까? – SwDevMan81
'List'으로 전환하는 것을 고려하십시오. –