scala - コレクションをMap-by-keyに変換する最適な方法は?

scala - コレクションをMap-by-keyに変換する最適な方法は?

私がT型のコレクションcを持っていて、(型P)Tプロパティpがある場合、 map-by-extraction-keyを実行する最良の方法は何ですか? val c: Collection[T] val m: Map[P, T] 1つの方法は次のとおりです。 m=new HashMap[P, T] c foreach{t=> m add(t.getP, t)}しかし、今私は変…


Scalaでマップするケースクラス

私はスカラのケースクラスのインスタンスを変換することができる良い方法があるかどうか誰かが知っていますか? case class MyClass(param1: String, param2: String) val x=MyClass("hello", "world") 何らかのマッピング、例えば getCCParams(x) returns "param1"-> "hi", "par…



Scala不変HashMapメソッドがMapを返すのはなぜですか?

私はscala.collection.immutable.HashMapの更新メソッドを使用して問題を抱えています.HashMapの代わりにMapを返す理由はわかりません。 新しいキーと値のペアを追加して新しいHashMapを取得するにはどうすればよいですか?…


scala - 変更可能なマップから不変のマップへの変換

private[this]object MMMap extends HashMap[A, Set[B]] with MultiMap[A, B] どのように不変に変換する?…


scala - Aの値を地図のキーとして使用してSeq[A]をマップ[Int、A]に変換する方法は?

私は次のようなクラスのオブジェクトを含むSeqを持っています: class A(val key: Int,...) 今度は、各オブジェクトのkey値をキーとして、オブジェクト自体を値として、このSeqをMapに変換します。 そう: val seq: Seq[A]=... val map: Map[Int, A]=...// How to convert seq to map?…


ScalaのMap[Int、Any]をSortedMapに変換するにはどうすればよいですか? またはTreeMap?

Map[Int, Any]をSortedMapまたはTreeMapに変換したいとTreeMapます。 それを行う簡単な方法はありますか?…


oop - Scala:HashMapをデフォルト値で使用する

私は変更可能なHashMapを持っており、それをデフォルト辞書のように使用したいと思います。 明白な方法は、getOrElseを使用し、毎回デフォルト値を2番目の値として提供することです。 しかし、デフォルト値は変更されないので、これは私のユースケースではやや控えめなようです。 var x=HashMap(1-> "b", 2-> "a", 3-> "c") println(x.ge…


Scala HListでマップを実行できるか

私は今、HListのいくつかの実装を行っています。 1つはDaniel SpiewakのScalaの土地でのHigh Wizardryに基づくもので、もう1つはApocalispブログの投稿に基づいています。 目標は、異種のリストをプライマリタイプではなく異種ではなく、より高級なものにすることでした。 例えば: val requests=Request[String]:: Request…


Scalaのフィルタ、マップ、フラットマップ中に、あるコレクションタイプから別のコレクションタイプに簡単に変換するにはどうすればよいですか?

私はList[Int]を持っていて、各要素でtoStringを呼び出し、その結果をVector[String]として戻したいとします。 Scalaでこれを行うさまざまな方法は何ですか? 最小限の量の明示的な型付けを持つソリューションはありますか? つまり、 ListではなくVectorを指定したいと思いますが、 String引数をフィルタ関数から推測したいと思います。 それともCanBuil…


scala - 以前の値に基づいてMap内の値を更新するための慣習的な方法

銀行口座情報を不変のMapに保存するとしましょう: val m=Map("Mark"-> 100, "Jonathan"-> 350, "Bob"-> 65) Markの口座から$ 50を払い戻したいと思います。 私は次のようにそれを行うことができます: val m2=m+("Mark"->(m("Mark")-50)) しかし、このコードは私にとっては醜いようです…




scala map 初期化 追加 mutable list map関数 get foreach hashmap