問題タブ [unapply]
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 - ケースクラスなしで Nat をいじる
Naturals の scala での定義と、PLUS 操作を作成するだけです。
また、Succ の定義については、学習目的で Case クラスを使用しないようにしています。私の最初のアプローチは次のとおりです。
しかし、コンパイラは私にエラーをスローします
X を取得するための明示的なメソッドを作成し、それが機能する
なんで?
scala - Scalaのヘッド/テール抽出器の時間と空間の複雑さは?
これの時間と空間の複雑さは何ですか:
の実装に依存しますSeq
か?tail vs for sIndexedSeq
が必要なので? スペースの複雑さは再帰呼び出しスタックによるものですか、それとも Scala は末尾呼び出しの最適化を自動的に行いますか?O(1)
O(n)
LinearSeq
O(n)
scala - Scalaの「エクストラクタ」はunapplyでジェネリックを使用できますか?
パラメーター化された型に固有のパターン マッチをサポートするために、エクストラクターのメソッドでジェネリックをunapply
暗黙的な「コンバーター」と共に使用することはできませんか?
私はこれをしたいです(行での使用に注意してください[T]
unapply
)、
しかし、次のコンパイルエラーが発生します
Error: (25, 10) not found: type ExampleExtractor case ExampleExtractor[String] (x) => x ^
スコープ内に1 つだけ暗黙的val
であり、型ヒント (以下を参照) をドロップすると問題なく動作しますが、それではオブジェクトが無効になります。