5
List<? extends List<? extends ObservationInteger>>

おそらく質問とは何の関係もない背景を説明するためだけに。JAHMM ライブラリを使用して HMM を構築およびスコア付けしようとしています。

関数のパラメーターの 1 つで、上記がデータ型として言及されていますが、それが何を意味するのかわかりません。

私が友人の助けを借りて理解していること List<? extends ObservationInteger>は、ライブラリ内の有効なクラスである「ObservationInteger」を拡張するクラスのインスタンスのリストを意味します。

List<? extends List<?...私を混乱させているのはアウターです。

誰かがこれに光を当てることができますか?

4

4 に答える 4

3

List<? extends List...List インターフェースを実装する任意の Collection の List にできることを意味します。

List<List<? extends ObservationInteger>> list = new ArrayList<List<ObservationInteger>>();? extends- コンパイラがないと完全一致が必要なため、コンパイラ エラー:

List<List<? ObservationInteger>> list = new ArrayList<List<? extends ObservationInteger>>();- わかった

しかし、これはより良く見えます

List<? extends List<? ObservationInteger>> list = new ArrayList<List<ObservationInteger>>();- わかった

于 2013-10-28T05:01:12.140 に答える
1

それは物事のリストのリストです。2 次元構造 (行と列) として視覚化します。

これ? extendsは、List のすべてのサブタイプと ObservationInteger のすべてのサブタイプにも有効であることを意味します。

于 2013-10-28T05:14:59.183 に答える
1

これは、List拡張Objectsするクラスのすべてのインスタンスである です。List.これらのオブジェクトはLists,それぞれのインスタンスであるため、拡張するクラスのすべてのインスタンスである一定量の がたまたま含まれてObjectsいますObservationInteger

于 2013-10-28T05:05:30.273 に答える
1

「ObservationInteger」を拡張する任意のクラスのインスタンスを持つ List Interface を実装する任意のクラスのインスタンスを持つ List Interface を実装する任意のクラスを意味します。

于 2013-10-28T05:02:53.273 に答える