In my Android project I have made an abstract AsyncTask class in which I input the URL and if needed paging information so I don't need to keep writing the HTTP stuff etc.
I've made an abstract method, onAsyncTaskResult(Object o) which must be implemented on use.
However when casting it to the appropriate object (can be of different types) the IDE gives me a warning
"Unchecked cast for java.lang.Object to java.util.ArrayList<com.company.package.subpackage.MyItem>"
Here is my code snippet of the implemention of said function
new SuperCoolAsyncTask() {
@Override
protected void onAsyncTaskResult(Object o) {
if(o instanceof ArrayList) {
//generates warning in the following line
AppConstants.scoreStatistics = (ArrayList<MyItem>)o;
}
}
}.execute(get_url_score_statistics());
How am i supposed to cast this to an ArrayList<MyItem>
without generating a warning?
Without the <MyItem>
declaration it throws an "Unchecked assignment"
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…