Как Диагностировать Ссылку Объекта, не установленную к Экземпляру Объекта - PullRequest
0 голосов
/ 09 апреля 2020

я знаю, что означает проблема, но я не могу найти нулевой указатель, мой код имеет две формы:

форма 1:

public static String [] name = new String[9];   

private void button4_Click(object sender, EventArgs e)
{
    if (label1.Text.Equals("Big Mac®"))
    {
        name[0] = "Big Mac®";
    }
    if (label1.Text.Equals("Little Mac™"))
    {
        name[1] = "Little Mac™";
    }
    if (label1.Text.Equals("Artisan Grilled Chicken "))
    {
        name[2] = "Artisan Grilled Chicken ";
    }
    if (label1.Text.Equals("Double Cheeseburger"))
    {
        name[3] = "Double Cheeseburger";
    }
    if (label1.Text.Equals("Double Quarter"))
    {
        name[4] = "Double Quarter";
    }
    if (label1.Text.Equals("Quarter Pounder® "))
    {
        name[5] = "Quarter Pounder® ";
    }
    if (label1.Text.Equals("Filet-O-Fish®"))
    {
        name[6] = "Filet-O-Fish®";
    }
    if (label1.Text.Equals("Artisan Grilled Chicken"))
    {
        name[7] = "Artisan Grilled Chicken";
    }
    if (label1.Text.Equals("McChicken®"))
    {
        name[8] = "McChicken®";
    }
    this.Hide();
}

форма 2:

for (int i = 0; i < Form5.name.Length; i++)
{  
    if (Form5.name[i].Equals(meals[i])) {//something is pointing to null 
        label10.Text += meals[i] +"\n";
        label13.Text += Convert.ToString(Form5.price[i]+" Jd"+"\n");
        label18.Text += Convert.ToString(Form5.count+"\n");
        label21.Text += Convert.ToString(Form5.Total+ " Jd"+"\n");
        resault[i] = Form5.Total + (Form5.Total*0.16);
    }
    sum += resault[i];
}
label11.Text = Convert.ToString(sum);

есть ли в этом коде нулевой указатель?

1 Ответ

0 голосов
/ 09 апреля 2020

Хотя вы инициализировали массив с 9 элементами в нем, он инициализировал бы их нулем. Если вы укажете name [5] .Equals и name [5] null, вы получите cra sh. Лучше сделать следующее:

if (string.Equals(Form5.name[i], meals[i]))

Однако, если оба значения равны NULL, это вернет true - не уверен, хотите ли вы, чтобы это произошло или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...