問題タブ [scala-collections]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - フィルタのScalaコレクションタイプ
List(1、 "1")があり、List [Any]と入力されていると仮定します。これはもちろん正しく、期待されています。今、私がこのようにリストをマップすると
結果の型はList[Int]であり、これも期待されます。次の例ではList[Any]になるため、私の質問は、フィルターのマップに相当するものがあるかどうかです。これは可能ですか?これはコンパイル時に解決でき、実行時には解決できないと思いますか?
scala - Scala SetをJava(java.util.Set)に変換しますか?
私はScalaにセットを持っています(セットを作成するときに任意の実装を選択できます。使用しているJavaライブラリはjava.util.Set[String]を想定しています。
Scalaでこれを行う正しい方法は次のとおりです(scala.collection.jcl.HashSet#underlyingを使用):
それは機能しているようですが、私はScalaに非常に慣れていないので、これが好ましい方法であるかどうかを知りたいです(他の方法で試してみると、型の不一致エラーが発生します):
generics - Scala コレクションの拡張
既存のキーの値を上書きしようとするとスローされる Map が必要です。私は試した:
そして得た:
私は Scala にまったく慣れていないので、これを克服する方法がわかりません。何か助けはありますか?:)
編集: Scala 2.8.0.Beta1-prerelease を使用しています (これにより、scala.collection にいくつかの変更が加えられます)
scala - Scala でマップを反転するエレガントな方法
現在、Scala を学習しており、Map を反転して反転値 -> キー ルックアップを行う必要がありました。これを行う簡単な方法を探していましたが、思いついたのは次のとおりです。
誰もがよりエレガントなアプローチを持っていますか?
java - scala 2.8暗黙のJavaコレクション変換
2.8 ベータ版の JavaConversions に問題があります。
そして例外:
scala - O(1) mutable.Map から immutable.Map への変換?
変更可能な Map を O(1) 時間で不変に変換 (ラップ) する方法はありますか (つまり、値をコピーするのではなく、JavaConversions で行われるのと同様です)
scala - find と return に最適な scala イディオム
これは私がよく遭遇するものですが、エレガントな方法がわかりません。Foo オブジェクトのコレクションがあります。Foo には、null または Bar オブジェクトを返すことができるメソッド bar() があります。コレクションをスキャンし、各オブジェクトの bar() メソッドを呼び出して、実際の参照を返す最初のオブジェクトで停止し、スキャンからその参照を返します。
明らかに:
foos.find(_.bar != null).bar
トリックを行いますが、 #bar を 2 回呼び出します。
arrays - Scala で 2 次元配列を作成して設定する
Scalaで事前入力された2次元配列を作成する推奨方法は何ですか? 私は次のコードを持っています:
リストの代わりに配列を作成するにはどうすればよいですか? .toList を .toArray に置き換えてもコンパイルされません。そして、ネストされた for 式よりもこれを行うためのより簡潔で読みやすい方法はありますか?
scala - 述語を使用してスカラ可変マップから要素を削除する適切な方法は何ですか?
新しいコレクションを作成せずにそれを行う方法は? これより良いものはありますか?
Scala 2.8 の PS