всем привет. Прошу разъяснить две детали: 1. зачем сериализовывать / десирализовывать размер мапы? 2. почему не работает реализация через for -each? //сериализация private void writeObject(ObjectOutputStream out) throws IOException { out.defaultWriteObject(); out.writeInt(HashMapReflectionHelper.callHiddenMethod(map, "capacity")); out.writeFloat(HashMapReflectionHelper.callHiddenMethod(map, "loadFactor")); for(E e: map.keySet()){ out.writeObject(e); } } //десерилизация private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); map = new HashMap(in.readInt(), in.readFloat()); E e; while ((e = in.readObject()) != null ){ map.put(e, PRESENT); } } }