Я бы сказал, что лучшее решение зависит от того, как назван ваш метод, и вы должны учитывать, как называются ваши методы, а также должны ли они возвращать ноль или выдавать исключение.
tidOfTerm
подразумевает для меня, что термин должен существовать, поэтому обнаружение того, что его не существует, должно вызвать исключение.
Если имя термина находится под контролем вашего собственного кода, и его отсутствие указывает на ошибку в вашем коде или среде, то вы можете вызвать исключение IllegalArgumentException.
Если аргумент имени термина не находится под вашим контролем, и если поиск действительного термина не является вполне допустимой ситуацией, тогда я переименую ваш метод в что-то вроде findTidForTermName
, давая небольшой намек на то, что какой-то поиск выполняется и, следовательно, существует вероятность того, что поиск может ничего не найти.