Intent 传递数据时,可以传递哪些类型数据?
Intent 可以传递的数据类型非常的丰富, java 的基本数据类型和 String 以及他们的数组形式都可以,除此之外还可以传递实现了 Serializable 和 Parcelable 接口的对象。
Serializable 和 Parcelable 的区别
在使用内存的时候,Parcelable 类比 Serializable 性能高,所以推荐使用 Parcelable 类。
1. Serializable 在序列化的时候会产生大量的临时变量,从而引起频繁的 GC。
2. Parcelable 不能使用在要将数据存储在磁盘上的情况。尽管 Serializable 效率低点,但在这种情况下,还是建议你用 Serializable 。
实现:
1.Serializable 的实现,只需要继承 Serializable 即可。这只是给对象打了一个标记,系统会自动将其序列化。
2.Parcelabel 的实现,需要在类中添加一个静态成员变量 CREATOR,这个变量需要继承Parcelable.Creator 接口。
public class MyPa