問題タブ [for-comprehension]
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 - flatMap を for-comprehension に変換する
および: foo
_bar
flatMap
これをに変換するにはどうすればよいfor-comprehension
ですか?
上記を Using for-comprehension, Try および Scalaでのシーケンスへの回答として提供したことに注意してくださいfor-comphension
。
scala - flatMap の代わりに orElse を理解するための Scala
私はfor
理解とflatMap
オプションに精通しています。
だから私はあなたが次のようなことができることを知っています
各ステートメントで実行しているSome(z)
ため、 for 内包表記に が何もない場合は、私に与えられます。None
flatMap
しかし、実際には、逆の方法で何かを探しています。内包内の a のように、for
すべてが である限り、内包までトラバースしたいと思います。None
orElse
for
例えば:
このようなものはありますか、またはこれに最適なアプローチは何ですか?
前もって感謝します!
scala - 理解のためにScala Futuresの結果を待つ方法
以下のコードに問題があります。すべてのgroundCoffee、heaterWater、frothedMilkメソッドが完了した後に「combine」メソッドがトリガーされるようにします。それらは同時にトリガーされます。4 つのメソッドすべては、future を使用して同時に実行されます。
上記のメソッドを実行すると、次のような出力が得られます
この後、プログラムは終了します。未来を学ぼうとしているときに、この例をサイトから入手しました。すべての先物が戻った後に結合メソッドがトリガーされるように、プログラムを待機させるにはどうすればよいですか?
scala - 関数作成の理解と数について
最近、Scala 開発者の面接を受けました。そんな質問をされました
問題は、A と B のどちらの実装がより効率的かということでした。
私たちは皆、理解のために翻訳できることを知っています
B は次のように記述できます。matrix.foreach(row => row.foreach(print _))
print
Aは100倍以上の関数を作成するため、おそらく正しい答えはBです。
言語仕様を確認しましたが、まだ答えを理解できません。誰かが私にこれを説明できますか?
scala - タプルを Right とする Scala の either
次のコードがあるとします。
REPLで評価すると、
:13: エラー: コンストラクターを期待される型にインスタンス化できません。見つかった: (T1, T2) 必要: scala.util.Either[Nothing,(Double, Double)] (a, b) <- a.right ^ :14: エラー: 見つかりません: 値 a } yield a + b ^
なぜこのようなエラーが発生するのですか? どちらかの権利からのタプルでパターン マッチを行うことはできませんか?
scala - 理解のためのこの単純な Scala が先物を実行しないのはなぜですか?
これが機能しない理由を理解するのに行き詰まっています:
これが「abc」を出力することを期待していますが、実際には何も起こりません。