public boolean isItMyName(String name)
{
name = fullname.substring(0,fullname.indexOf(' '));
...
}
Затем мой код продолжается и продолжается. Когда я запускаю это, я получаю исключение нулевого указателя, и ошибка указывает на эту строку.
Я также создал тестер JUnit, где он проверяет, является ли ввод истинным или ложным.
Name myName = new Name();
assertEquals(false, myName.isItMyName("Troll");
Это также дает мне исключение нулевого указателя в assertEquals(false, myName.isItMyName("Troll"));
Я в своем уме. Как я могу это исправить?
@ Грег Хьюгилл:
В моем классе Name я делаю это:
public class Name(String n)
{
name = n;
}
Но в моем основном методе я передаю строку: Name myName = new Name("Johnathy");
Таким образом, строка не является нулевой.
ФИО:
public class EmailAddress {
private String address;
public EmailAddress(String a)
{
address = a;
}
public String toString()
{
return address;
}
fullname
, которую вы используете в этой строке, равна нулю. Итак, вопрос: где вы инициализируете эту переменную чем-то другим, кроме значения по умолчанию, равного нулю? - person Darin Dimitrov   schedule 16.10.2011fullname
неnull
? - person Danilo Piazzalunga   schedule 16.10.2011main
, это не тот же объект, который вы создаете в своем модульном тесте? - person Jon Skeet   schedule 16.10.2011Name
в разных ситуациях и введя код дляEmailAddress
, который кажется несвязанным. Боюсь, я потерялся сейчас. - person Greg Hewgill   schedule 16.10.2011