Я строю поиск школьного проекта, и я застрял в этом весь день.Я перепробовал все, что мог придумать.Я, должно быть, где-то упускаю что-то простое, просто не знаю, что на этом этапе
Я получаю исключение в потоке "main" java.lang.NullPointerException в строке 56, которая является первым IF внутри цикла FOR.Это происходит только в том случае, если поиск ничего не находит.Все остальное вроде бы работает нормально.
Заранее спасибо всем, кто попробует.
else if ( menuSelect == 3)
{
do
{
Display.search(fullLine);
continueSearch = 1;
search = input.nextLine();
if (search.length() == 10 && search.matches(regex))
{
search = search.replaceFirst("(\\d{3})(\\d{3})(\\d+)", "($1) $2-$3"); // format phone number
} // end IF search match regex (phone format)
for (int index = 0; index < MAX && continueSearch == 1; index++)
{
if (leadArray[index].getName().equalsIgnoreCase(search)
|| leadArray[index].getAddress().equalsIgnoreCase(search)
|| leadArray[index].getPhone().equalsIgnoreCase(search)
|| leadArray[index].getEmail().equalsIgnoreCase(search))
{
Pages.viewLead(listSize, noteListSize, index, noteArray, leadArray);
menuSelect = 0;
continueSearch = 0;
} // end IF search matches data params
else if (leadArray[index].getName().contains(search)
|| leadArray[index].getAddress().contains(search)
|| leadArray[index].getPhone().contains(search)
|| leadArray[index].getEmail().contains(search))
{
Pages.searchAllLeads(listSize, noteListSize, search, noteArray, leadArray);
menuSelect = 0;
continueSearch = 0;
} // end IF search contains data params
else if (search.equals("00"))
{
continueSearch = 0;
Pages.mainMenu(listSize, noteListSize, noteArray, leadArray);
} // end IF exit search 00
} // end FOR array Loop
System.out.println("\nYour search returned (0) results.\n");
} while (!"00".equals(search) ); // end search loop
Pages.mainMenu(listSize, noteListSize, noteArray, leadArray);
} // end IF menuSelect 3 (search)