Но тогда метод именования не имеет смысла - countChars подсчитывает, сколько раз символ встречается в строке.Если конкретный символ не встречается, тогда 0 - вполне разумный ответ.Нулевой ответ на самом деле не является разумным - если вы хотите получить нулевое значение, тогда метод, который вызывает countChars, возвращает 0 и действует так, как если бы он был нулевым:
int result = countChars("Hello world", 'z');
if(result == 0)
someMethod(null);
else
someMethod(result.ToString());
Даже бросить исключение лучше, чем возвращатьnull, потому что он, по крайней мере, сообщает разработчику, который использует ваш код, что не так и дает некоторое представление о том, как это исправить.Просить код сделать что-то, что на самом деле не должно возвращать пустой ответ, а получить пустой ответ может быть невероятно сложно работать с