После использования в течение некоторого времени типа F # option
я понимаю, что его можно использовать для обработки исключительных случаев. . Я могу использовать параметр
или Exception
в следующих примерах:
find
из модулей List / Array / Seq вызывают KeyNotFoundException
в редких случаях, тогда как соответствующие tryFind
копии возвращают None
в этих ситуациях. У меня сложилось впечатление, что вариант
является более функциональным подходом, а Exception
чаще используется в платформе .NET.
В чем разница между опцией
и Исключением
в обработке исключений с точки зрения удобства использования, производительности и т. Д.? В каких случаях использование одного метода лучше, чем использование другого?