#11 Scalaで学ぶエラーハンドリングの基本

Scalaのエラーハンドリングには、Javaと同じ`try`・`catch`に加えて、関数型プログラミングらしい`Try`という型を使った考え方があります。この記事では、Scalaにおけるエラーハンドリングの基本を解説します。

try・catchの基本

try { val result = 10 / 0 } catch { case e: ArithmeticException => println("0では割れません") }

`catch`の中で、以前の記事で触れた`match`と同じ書き方をするのがScalaの特徴です。

Tryという型を使う方法

Scalaには、Rustの`Result`に似た`Try`という型があり、成功(`Success`)と失敗(`Failure`)を値として扱えます。

import scala.util.Try val result: Try[Int] = Try(10 / 0) result match { case Success(value) => println(s"結果: $value") case Failure(e) => println("エラーが発生しました") }

Scalaならではの注意点

`try`・`catch`は他の言語と似た書き方ができますが、Scalaらしいコードを書きたい場合は、`Try`型を使ってエラーを「値」として扱う書き方に慣れていくとよいでしょう。値として扱えることで、他の処理と組み合わせやすくなります。

まとめ

Scalaのエラーハンドリングは`try`・`catch`に加えて、`Try`型を使う関数型らしい方法があります。両方の書き方を知っておくと、状況に応じて選べます。


本ページはプロモーションを含みます。

参考書籍(PR)

Scalaをもっと学びたい方には「実践Scala入門」がおすすめです。

コメント

このブログの人気の投稿

#11 Rustで学ぶエラーハンドリングの基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本

#19 Goで学ぶテスト(単体テスト)の基本