私は2次元配列を持っています
val A = Array((10.0,1.0,2.0,3.0),(20.0,4.0,5.0,6.0),(10.0,7.2.8.0,9.0))
10 に等しい最初の要素をフィルタリングし、他の要素の値を取得するにはどうすればよいですか?
次のような結果:
x = Array((1.0,2.0,3.0),(7.2.8.0,9.0))
x(i) を使用して、配列内の値を取得できます
ありがとう !:)
私は2次元配列を持っています
val A = Array((10.0,1.0,2.0,3.0),(20.0,4.0,5.0,6.0),(10.0,7.2.8.0,9.0))
10 に等しい最初の要素をフィルタリングし、他の要素の値を取得するにはどうすればよいですか?
次のような結果:
x = Array((1.0,2.0,3.0),(7.2.8.0,9.0))
x(i) を使用して、配列内の値を取得できます
ありがとう !:)
次のようにできます。
A.filter(_._1 == 10).map{case (a,b,c,d)=>(b,c,d)}
またはこのように:
for ((a,b,c,d) <- A if a == 10) yield (b,c,d)
(ちなみに、本当に必要な場合を除き、Scala では配列を使用しないことをお勧めします。Seq や Vector などの不変コレクションを使用することをお勧めします。Scala コレクションの (やや古い) 紹介がここにあります。)