zoukankan      html  css  js  c++  java
  • 传递实体类对象的两种方法_Serializable和Parcelable

    Serializable是由JAVA封装的传递方法,Parcelable则是android创建的。

    两者相比较Serializable简单,但是消耗较大,Parcelable则相对麻烦,但是消耗小

    Serializable使用方法 :

    1.implement Serializable

    public class Data implements Serializable

    2.传递值

    intent.putExtra("user", new Data("name", 2));

    3.获取数据

    Intent intent = getIntent();
    Data data = (Data) intent.getSerializableExtra("user");
    

    Parcelable使用方法:

    1.implement Parcelable ----重写方法并添加两个方法

    //重写两个方法
      @Override
        public int describeContents() {
            return 0;
        }
    
        @Override
        public void writeToParcel(Parcel dest, int flags) {
            dest.writeString(getName());
            dest.writeInt(getAge());
        }
    
    //加入两个方法
        public static final Creator<Data> CREATOR = new Creator<Data>() {
            @Override
            public Data createFromParcel(Parcel source) {
                return new Data(source.readString(), source.readInt());
            }
    
            @Override
            public Data[] newArray(int size) {
                return new Data[size];
            }
        };

    2.与上面相同

    3.获取数据

     Data data = intent.getParcelableExtra("user");

    两个方法比较的话 ,parcelable是挺麻烦的。各有好处。

  • 相关阅读:
    1052 Linked List Sorting (25 分)
    1051 Pop Sequence (25 分)
    1050 String Subtraction (20 分)
    1049 Counting Ones (30 分)
    1048 Find Coins (25 分)
    1047 Student List for Course (25 分)
    1046 Shortest Distance (20 分)
    1045 Favorite Color Stripe (30 分)
    1044 Shopping in Mars (25 分)
    1055 The World's Richest (25 分)
  • 原文地址:https://www.cnblogs.com/lyxin/p/5776633.html
Copyright © 2011-2022 走看看