java - T extends Comparable<? super T> 中问号? 是固定的吗?
迷茫
迷茫 2017-04-17 15:44:48
0
2
838
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全員に返信(2)
黄舟

は固定で、T または T の親クラスを表します。

Java のジェネリックの定義の本来の目的は、実行時に発生するエラーをコンパイル時に確実にチェックできるようにすることです。 と super T> を見てみましょう。
<? super T> はダウンワード モデリングと呼ばれます。これは、Comparable インターフェイスのジェネリック要素がすべて T または T の親クラスであることを意味します。パラメーターを渡すときに、T または T のサブクラスを渡すことができます。
<extendsT> は上方整形と呼ばれます。ArrayList<?extendsT> を例にとると、このリスト コレクション内のすべての要素は、取り出されるときに自動的に T 型に変換されることを意味します。

説明するのは少し難しいですが、実際には数回ノックすれば理解できるでしょう。

いいねを押す +0
Peter_Zhu

データ型からデータを取得したい場合は、? extends ワイルドカードを使用します。
オブジェクトをデータ構造に書き込みたい場合は、? super ワイルドカードを使用します。の場合は、ワイルドカードを使用しないでください。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート