Digite safety: Não verificado cast de Objeto para Listar <MyObject>

Eu tenho um ListView listando um objeto personalizado (digamosMyObject).

Eu quero filtrar dinamicamente através de umEditText então eu tive que implementar umgetFilter() com um método publishResults:

@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
    MyObjectAdapter.this.setItems((List<MyObject>) results.values);
    MyObjectAdapter.this.notifyDataSetChanged();
}

Neste ponto, o Eclipse reclama:Type safety: Unchecked cast from Object to List<MyObject>

Tenho certeza de que esse elenco sempre será verdadeiro, mas o Eclipse só sugere adicionar@SuppressWarnings("unchecked") mas eu sou totalmente contraSuppressWarnings porque é só esconder o problema, não uma solução ...

Eu tentei adicionar:

if(results.values instanceof List<MyObject>)

Mas Eclipse reclama novamente, e isso não resolve nada ...

Cannot perform instanceof check against parameterized type List<MyObject>. Use the form List<?>

Eu sei que o casting será sempre correto, mas qual é a maneira correta de fazer o código ter certezaresults.values é na verdade umList<MyObject> ?

Desde já, obrigado!

questionAnswers(4)

yourAnswerToTheQuestion