В самом конце эта статья, представляющая новую Java 8 Optional
, указывает, что
Опция не такая мощная, как Option [T] в Scala (но при по крайней мере, это не позволяет обернуть нуль). API не так прямолинейно, как нулевая обработка и, вероятно, намного медленнее. Но преимущества проверки времени компиляции и удобочитаемости и документации значение Необязательно используемого последовательно значительно превосходит недостатки
У меня есть очень простые знания о Scala, и я знакомлюсь с Java 8 Optional
, поэтому, с первого взгляда, мне не ясно, какие различия между ними, если они есть.
Я знаю, например, что в Scala я могу использовать сопоставление образцов для тестирования Option
и сделать мою жизнь проще. Но, не считая особенностей синтаксиса Scala, я хотел бы знать, есть ли что-то, что я могу сделать с Option
в Scala, которое я не могу сделать с Optional
в Java.
Надеюсь, это не отмечено как глупый вопрос, но каждый раз, когда я читаю, что "мощный", вопросительные знаки летят над моей головой.