Как лучше всего адаптировать функции в стиле C, которые возвращают true/false для Java?
Вот простой способ, чтобы проиллюстрировать, в чем заключается проблема.
public static boolean fileNameEndsWithExtension( String filename, String fileExtension) {
return filename.endsWith( fileExtension );
}
Обратите внимание, что, вероятно, существует более элегантный способ фильтрации файлов (не стесняйтесь комментировать его). В любом случае, если имя файла является значением null
, делает одно:
- Вернуть false, если имя файла равно null? Если да, то как отличить случай, когда имя файла
null
, и случай, когдаString
или имя файла не заканчивается данным расширением файла? - Измените тип возвращаемого значения на логический класс-оболочку, который допускает значение
null
. - Бросить
Exception
и заставить программиста убедиться, что значениеnull
никогда не передается методу? - Использовать другое решение?