2D ベクター内の要素の最初の出現のインデックスを見つけたいとします。
val table = Vector.tabulate(10, 10)((x,y) => 10*x + y)
val row = table indexWhere (_.indexOf(42) != -1) // row = 4
val col =
if(row == -1) -1
else table(row) indexOf 42 // col = 2
要素を含む行で indexOf が2回呼び出されるため、これは少し非効率的です。命令型コードに頼らずにこれを行うより良い方法はありますか?