Я пробовал это и получал странное поведение от JAVA, может кто-нибудь объяснить это мне?
boolean testNull(String... string) {
if(string == null) {
return true;
} else {
System.out.println(string.getClass());
return false;
}
}
boolean callTestNull(String s) {
return testNull(s);
}
Тогда у меня есть тестовый пример:
@Test
public void test_cases() {
assertTrue(instance.testNull(null)); // NULL
assertFalse(instance.testNull()); // NOT NULL
assertFalse(instance.callTestNull(null)); // NOT NULL
}
Вопрос: если я вызываю testNull() напрямую с параметром null, я получу true назад, но если вызов callTestNull() с null, который вызывает testNull(), он сообщает мне, что параметр а не пустой, но пустой массив.