総称型のキャスト

List<? extends SampleIF> list = getSample();

***** ここでキャストを行いたい ******

下記のようなクラスへとキャストを行いたいがエラーがでる。

public class Customer implements SampleIF { ....}

 

>Cannot cast from Class<capture#1-of ? extends SampleIF> to SampleIF

 

現状、意図する解決策が見つからず、フツーにキャストを行う形でエラーを解消

 

ArrayList<Customer> cusList = new ArrayList<Customer>();

for (SampleIF smp : list) {

      Customer cus = (Customer) smp;

      cusList.add(cus);

}

うーむ、ラムダ式を使うべきだな,,,,