我正在构建一个android应用程序,我想添加一个历史记录功能。我听说我可以序列化一个列表来保存和检索数据,而不是使用数据库,我不知道它是如何工作的,所以我来这里征求意见,有什么地方我可以开始这件事。一些好的链接可能有用。
谢谢

最佳答案

您不应该使用可序列化的,android以更有效的方式实现了parcelables。关键是你必须自己定义如何包裹这个对象,但其实并不难。
简单示例:

public class MyParcelable implements Parcelable {
     private int mData;

     public int describeContents() {
         return 0;
     }

     public void writeToParcel(Parcel out, int flags) {
         out.writeInt(mData);
     }

     public static final Parcelable.Creator<MyParcelable> CREATOR
             = new Parcelable.Creator<MyParcelable>() {
         public MyParcelable createFromParcel(Parcel in) {
             return new MyParcelable(in);
         }

         public MyParcelable[] newArray(int size) {
             return new MyParcelable[size];
         }
     };

     private MyParcelable(Parcel in) {
         mData = in.readInt();
     }
 }

如果要保存散列集,只需确保散列中的对象也是可分块的。
如果你觉得这太麻烦了,奈鲁杰之前发布的答案是正确的。

关于java - 如何序列化HashSet,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4307461/

10-09 04:08