問題タブ [nested-generics]

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 投票する
2 に答える
55 参照

java - Javaのジェネリッククラスでネストされたジェネリックから変数を割り当てますか?

次のコードがある場合:

そして、私はDummyClass<?> dummy

できます

エラーなし。

でも、

コンパイルエラーが発生します:

を割り当てdummy.getListSet()ます。

に代入できないdummy.getListSet()のはなぜSet<List<?>>ですか?

0 投票する
0 に答える
575 参照

c# - Linq で複雑なオブジェクトをフィルター処理する

この複雑なオブジェクトに基づいて IEnumerable リストをフィルタリングする必要があります。ネストされたディクショナリ要素の 1 つで比較演算子を実行する必要があります。現在、親オブジェクトに where 句があります。最も内側の辞書のキー要素の 1 つをフィ​​ルター処理する linq 拡張メソッドを作成するにはどうすればよいですか?

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

java - javaはジェネリックの上に定義されたクラスからジェネリック型を推測できますか?

この他の回答からコードを借りました

私の質問は、このコードに関係しています

IntToStringConverterを実装しているようIConverter<Integer, String>Integer、タイプは既知ですが、Java にはタイプ入力を回避してタイプするだけStringの推論システムがありませんか?new ConverterUser<IntToStringConverter, Integer, String>()new ConverterUser<IntToStringConverter>()

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

java - パラメータを許可するジェネリック。またはパラメータ化可能なジェネリック

私が遊んでいる興味深いアーキテクチャがあります。ユーザーは StoredObject を含む Store を作成できます。ストアは、インターフェイス (つまり、Get、Put、Print) によって表されるさまざまな操作をサポートできます。

これは非常に単純化されたもので、次のようになります。

同様の「get」メソッドを実装したいときに問題が発生します。理想的には、次のようなインターフェイスが必要です。

明らかに、これは不正な Java です。これが意図していることを達成するために使用できる構文 (またはハック) はありますか? 事実上、定数型をジェネリック パラメーターとして指定する代わりに、パラメーター化可能な型をジェネリック パラメーターとして指定したいと考えています (それ自体が get メソッドでパラメーター化されます)。はい、これは Java にはない高次の型に要約されます。クレイジーで醜いハックは大歓迎です!

他の設計上の制約により機能しない一般的なソリューション:

  • get/put/etc 操作を内部Objクラスに移動する
  • Store.Obj<T>ジェネリックパラメーターではなく、スーパータイプを作成し、それを取るインターフェイスを指定します。
0 投票する
1 に答える
55 参照

java - ジェネリックから型を推測する

以下の例のように、オブジェクト O の型を推測する方法はありますか (これはコンパイルされません)。

したがって、上記の例ではwhereLogSetを一般的に使用しています。の場合、メソッドの型として使用する の型を推測することは可能ですか?OO extends LogObjectS extends LogSetSOlogUpdated

これを明示的に行う唯一の方法は次のとおりです。

私の質問が理にかなっていることを願っています。