1. 程式人生 > >WPF(C#)開發:報錯System.NullReferenceException

WPF(C#)開發:報錯System.NullReferenceException

參考網站:https://blog.csdn.net/April0012/article/details/44069501

原來程式碼:

                    string[] informTable = new string[50];
                    Service1 ser2 = new Service1();
                    informTable = ser2.ShowDatabaseBtnSearch2(mailbox1);
                    for (int i = 0; i < informTable.Length; i++)
                    {
                        if (!informTable[i].Equals(null) && !informTable[i].Equals(""))
                        {
                            listbox1.Items.Add(informTable[i] + "");
                        }
                    }

後來加了一句  if (informTable[i] == null) break; 就不報錯了

後來程式碼:

                    string[] informTable = new string[50];
                    Service1 ser2 = new Service1();
                    informTable = ser2.ShowDatabaseBtnSearch2(mailbox1);
                    for (int i = 0; i < informTable.Length; i++)
                    {
                        if (informTable[i] == null) break;  //後來加的程式碼
                        if (!informTable[i].Equals(null) && !informTable[i].Equals(""))
                        {
                            listbox1.Items.Add(informTable[i] + "");
                        }
                    }

錯誤原因:informTable[i].Equals(null) 函式判斷的是informTable[i]內的值是否等於null

而 informTable[i] == null 判斷的是informTable[i]引用是否等於null,即是否資料傳過來的時候是空指標

具體錯誤資訊: