問題タブ [erasure]

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.

0 投票する
1 に答える
14962 参照

scala - Scala のジェネリック型のパターン マッチング

次のようなスカラ関数があります。

ここで、T のタイプに応じて (私の場合は、 、および である可能DoubleBooleanLocalDateあります)、 に関数を適用する必要がありますob。このようなもの(コードが意味をなさないことはわかっていますが、私が何をしようとしているのかを伝えようとしています):

Scala の Erasure プロパティを考慮して、リフレクションを何らかの方法で使用して仕事を終わらせることはできますか? それは可能ですか?

0 投票する
3 に答える
471 参照

scala - Scala と Haskell の List[T] と Set[T] でのパターン マッチング: 型消去の効果

以下のコードに相当する Haskell は正しい答えを生成しますか?

この Scala コードを修正して、正しい答えを生成できますか? はいの場合、どのように?

プリント:

しかし、私はそれが印刷されることを期待しています:

0 投票する
2 に答える
262 参照

scala - Scala collect 型パターンと型消去

させて

など

でも

と警告する

したがって、整数のリストを収集するための警告のない/正しいアプローチがあるかどうかを尋ねます。

どうもありがとう。

0 投票する
2 に答える
91 参照

scala - scala getClass と型消去?

ジェネリック型の場合に getClass メソッドを使用すると、少し困惑します。

これは常に AnyRef か Any か何かであるべきではありませんか? タイプK情報は実行時に利用できないので?

a(3)出力さIntれ、出力されa("fdasf")ますString.


わかりました、これはばかげた質問です。K とキーの型情報に混乱します。

0 投票する
1 に答える
163 参照

java - 型消去によるあいまいなコンストラクター

次のような従来のソース コードの断片があります。

コードで使用されるOpenMBeanParameterInfoSupportコンストラクターは 1.6 で導入されました。コードが 1.6+javacでコンパイルされるたびに、次のエラー メッセージが表示されます。

2 つの質問:

  1. 生の型を使用することは不正行為であることは理解していますが (ではなくopenTypeとして宣言する必要があります)、ctor シグネチャがあいまいになるのはなぜですか? 最初のケースでは、署名の消去はであり、2 番目のケースでは、最も具体的なタイプ (つまり ) の署名を選択する必要がありますね。OpenType<?>OpenTypeOpenMBeanParameterInfoSupport(String, String, OpenType, Descriptor)OpenMBeanParameterInfoSupport(String, String, OpenType, Object)javacDescriptor
  2. 私の同僚は、1.7 JDK を指定して 1.7 JDK を使用してプロジェクトを正常にビルドできると主張していますが-source 1.6 -target 1.6、コンパイラ エラーに直面しているのは私だけです。コードを変更せずにコンパイルする方法はありますか? 私が考える唯一の回避策は、ソース レベルを 1.4 に設定することです。これは、ビルド サーバーが使用するものではありません。