IndexedSeqを持っていると、それを最初から最後まで反復する方法は?ScalaでIndexedSeqを逆にするには?
3
A
答えて
9
あなただけの先頭に終わりから、それを反復処理する場合は、reverseIterator
を呼び出すことができます。マップを適用する場合は、reverseMap
。 foldLeft
とfoldRight
は逆の方向にトラバースするため、逆のリストでそれぞれを別のものと考えることができます。同様にreduceRight
およびscanRight
である。開始の代わりに終わりの近くにあるものを見つける方法は、last
の束があります。それ以外の場合はreverse
(コレクション全体を再作成する場合)または.view.reverse.whatever
を使用してコレクションをメモリに複製しない場合は、簡単な場合はforeach
、reverseIterator
が一般的にこのトリックを行います。
4
あなたはそれを逆にすることができます:
scala> val x = IndexedSeq(1,2,3,4)
x: IndexedSeq[Int] = Vector(1, 2, 3, 4)
scala> x.reverse.foreach(println)
4
3
2
1
それとも、あなたが反復している間、あなたがやっていることに応じて、foldRight
はあなたが望むものであるかもしれないが。 foldRight
は、コレクションを右から左に移動する折りたたみです。
scala> x.foldRight(0){ (item, total) => println("adding "+item); total + item }
adding 4
adding 3
adding 2
adding 1
res121: Int = 10
+0
ありがとうございました。メソッドのリストを見ている間、明白な '逆'を見逃してしまった。 – Ivan
関連する問題
- 1. Scalaは変換IndexedSeq [AnyVal] Arrayに[INT]
- 2. ScalaでLinkedHashMap要素の順序を逆にする方法
- 3. Seqの変更可能なマップをScalaのIndexedSeqの不変のマップに変換する
- 4. Scalaの逆文字列
- 5. MatchedErrorはLinearSeqではなくIndexedSeqを受け取ります
- 6. Scala parser-combinators:一致を逆転する方法は?
- 7. Scala JacksonをJSON逆シリアル化に使用しますか?
- 8. ScalaのSeqとIndexedSeq/LinearSeqの違いは何ですか? <a href="http://www.scala-lang.org/docu/files/collections-api/collections_5.html" rel="noreferrer">Scala Collection documentation</a>で
- 9. Pythonでタプルを逆にするには?
- 10. Pythonで文を逆にするには
- 11. IndexedSeq [DataFrame]をDataFrameに変換しますか?
- 12. 他のscalaプログラムでscalaプログラムをコンパイル&実行するには?
- 13. Scalaでプライオリティキューを使用するには?
- 14. MySQL SUBSTRING_INDEX()をscalaでエミュレートするには?
- 15. Scalaでリストをコピーするには
- 16. Scalaでストリームをコーディングするには?
- 17. Scalaでビットマップを描画するには?
- 18. PHP RegExp逆アセンブルを逆にするには
- 19. Scala REPL:リモートMavenリポジトリをScala REPLクラスパスに追加するには?
- 20. cons演算子とindexedSeqを照合できないのはなぜですか?
- 21. 配列を逆にするには
- 22. ScalaコンソールとScalaスクリプトでScala jarライブラリからクラスにアクセスするにはどうすればいいですか?
- 23. * ngForで逆順にする方法は?
- 24. Scalarで効率的にIndexedSeq [Byte]をutf-8文字列に変換する方法
- 25. Scalaで配列[VertexIds]をマップに変換する方法は? Scalaで
- 26. LinuxでPythonでパスワードを可逆的に保存するには?
- 27. リストを逆にではなく、同時に、それを逆にすることは
- 28. Scalaでネストされたリストの深い逆転
- 29. intellij - 作成するScalaプロジェクト、Scala-Scala、Scala-SBTはどれですか?
- 30. 私はテキストを逆にする
私はそのような方法が存在したことを思い出さなかった!私はその日の質問に答える時間がなかったのでとてもうれしいです:...-) –
@ DanielC.Sobral - 私はむしろそれが全く存在しないことに失望したので、私はそれを覚えました。私は想像できるすべての便利な方法を持っているよりも、私のコレクションのインターフェースがシンプルである方が好きです。 –