Załóżmy, że mam ciąg znaków w scala i chcę spróbować przetworzyć podwójne z niego.Jak ustalić, czy ciąg Scala można parsować jako podwójne, czy nie?
Wiem, że mogę po prostu zadzwonić pod numer toDouble
, a następnie złapać wyjątek formatu liczbowego w java, jeśli to się nie powiedzie, ale czy istnieje lepszy sposób na zrobienie tego? Na przykład, jeśli istnieje funkcja parseDouble
, która zwróciła Option[Double]
, to kwalifikuje się.
Nie chcę umieszczać tego w moim własnym kodzie, jeśli już istnieje w standardowej bibliotece i po prostu szukam go w niewłaściwym miejscu.
Dziękujemy za pomoc.
Powinieneś naprawdę złapać 'NonFatal (_)', a nie tylko "_". – rightfold
Powinieneś raczej użyć funkcji 'Try'. Zobacz odpowiedź @Jeff Schwab. – Moebius