私はスケーラで可変ソートマップを実装するためのオプションを探していました。私は、変更可能なマップにデータを保存し、必要に応じてソートされたマップに変換したり、JavaからTreeMapをラップすることができます。しかし、なぜこれがscalaで実装されていないのか知っていますか?関数型プログラミングと違うの?Scalaで可変ソートマップを使用していない理由
よろしく
私はスケーラで可変ソートマップを実装するためのオプションを探していました。私は、変更可能なマップにデータを保存し、必要に応じてソートされたマップに変換したり、JavaからTreeMapをラップすることができます。しかし、なぜこれがscalaで実装されていないのか知っていますか?関数型プログラミングと違うの?Scalaで可変ソートマップを使用していない理由
よろしく
筆記を省略する理由はありません。実際には、a mutable sorted map was added to Scala 2.12.xです。
実装が存在しない考えられる理由についてthis old answerでいくつかの議論があります。
あなたの2番目の質問に関しては、Scalaには他の変更可能なコレクションがありますので、変更可能なソートマップが存在しないという難しい理由はありません(以前の質問も参照してください)。より一般的な意味で、関数型プログラミングは、変更可能なデータが使用されていないことを暗示することができ、この場合、変更可能なソート済みマップは回避されます。しかし、ライブラリーのユーザーが見ることができない限り、変更可能なコレクションをライブラリーの「裏側」で使用してパフォーマンスを向上させることもできます。
functionnalプログラミングの2つのキーの概念は 'function are objects'と 'immutability'です –
次に、最適な実装では変更可能なマップを作成し、このマップをソートして新しいマップに変換する必要があります。 ? – ypriverol
しかし、@ Jasper-M scalaには変更可能なコレクションがあります。マップなど – ypriverol