例外処理

2026年3月15日
1 分

Julia の例外処理の基本は trycatch だ。

julia> s = "12"
"12"

julia> try
         i = parse(Int, s)
       catch
         println("Error!")
       end
12

例外の発生する可能性があるコードを try ブロックに置き、実際に例外が発生したら catch ブロックが実行される。 次の例では、数とみなせない文字列を Int に変換しようとして例外が発生している。

julia> s = "ab"
"ab"

julia> try
         i = parse(Int, s)
       catch
         println("Error!")
       end
Error!

例外が発生したかどうかにかかわらず、コードを実行する必要があるときには、finally を使う。

julia> file = open("hello.txt")
IOStream(<file hello.txt>)

julia> try
         readlines(file)
       finally
         close(file)
       end
1-element Vector{String}:
 "Hello, Julia."

こうしておけば、もし、読み込み時に例外が発生しても、ファイルをクローズしてくれる。