せっかちな人のために、Scalaから次の問題を解決しようとしています。質問は次のとおりです。
パターン マッチングを使用して、長さが 2 以上の配列の最初の 2 つの要素を交換する関数 swap を記述します。
私の解決策は次のとおりです。
def swap(sArr:Array[Int]) = sArr.splitAt(2) match {
case (Array(x,y),Array(z)) => Array(y,x,z)
case (Array(x,y),Array()) => Array(y,x)
case _ => sArr
}
私の問題は、最初のケースステートメントにあります。私はそれがパターンマッチ(Array(1,2),Array(3))
するつもりであるのに対し、それは何かのようなパターンマッチになると思います(Array(1,2),Array(3,4,5.....))
誰かがそれがどのように可能になるかを指摘できますか.
ありがとう