アウトプットしないと死ぬ病

Scalaの個人メモ帳

Scalaのcontainsとexistsの違いを覚えた!!

ScalaでListの要素にある値が存在するかチェックをしたいときありますよね。

そんな時、直感でexistsを使おうとして、「あれ、なんか構文エラー出るぞ?」みたいなことがあるのでメモ。

Scalaで単純に要素の存在チェックをするときはcontainsを使います。

こんな感じ。

scala> List(1,2,3,4,5).contains(1)
// result
true

そして問題のexistsですが、これは「ある条件を満たす要素が存在するか」をチェックするコレクションメソッドです。

例えば、奇数は存在するかチェックしたい場合はこんな感じです。

// 奇数が存在
scala> List(1,2,3,4,5).exists(n => n % 2 != 0)
// result
true

// 奇数が存在しない!
scala> List(1,2,3,4,5).exists(n => n % 2 != 0)
// result
false