У меня есть очень простая функция loadPlants()
, которая загружает ArrayList<Plant>
из памяти.
public void loadPlants() {
try {
FileInputStream fIS = this.openFileInput("plantArrList");
ObjectInputStream oIS = new ObjectInputStream(fIS);
myPlantList = (ArrayList<Plant>)oIS.readObject();
oIS.close();
fIS.close();
} catch (IOException|ClassNotFoundException ie) {
ie.printStackTrace();
}
}
Я получаю ошибку с myPlantList = (ArrayList<Plant>)oIS.readObject();
. Это говорит о том, что у меня есть непроверенный актерский состав, и это правда, но проблема в том, что он не позволит мне запустить приложение таким образом. Я уверен, что это всегда будет иметь тип ArrayList<Plant>
, есть ли способ обойти это? или, может быть, что-то мне не хватает? Я попытался присвоить данные временному объекту, затем преобразовать их в ArrayList<Plant>
и выполнить вложенное тестирование оператора if для всех возможных случаев, но ни один из них не сработал.