Сначала я создаю элемент A. Затем я добавляю элемент A в список A. Затем я сериализую элемент A в файл, а затем считываю элемент A из того же файла.Наконец, я не могу найти прочитанный элемент B из списка A. Найти элемент B в списке A. не удается.Результат оператора println равен -1.У меня вопрос, почему?
public class ListTest {
public static void main(String[] args) {
Item a = new Item("a");
List<Item> listA = new ArrayList<Item>();
listA.add(a);
try (FileOutputStream fos = new FileOutputStream(new File("text.dat"));
ObjectOutputStream oos = new ObjectOutputStream(fos)) {
oos.writeObject(a);
try (FileInputStream fis = new FileInputStream(new File("text.dat"));
ObjectInputStream ois = new ObjectInputStream(fis)) {
Item b = (Item) ois.readObject();
System.out.println(listA.indexOf(b));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
}
}
** РЕДАКТИРОВАТЬ 1 **
Где находится код товара.
public class Item implements Serializable {
private static final long serialVersionUID = 1L;
private String mName;
public Item(String name) {
mName = name;
}
public String getName() {
return mName;
}
public void setName(String name) {
mName = name;
}
}