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