Android(安卓)Bundle存储数据类型
16lz
2021-01-24
曾经被问到这样一个问题:Bundle能存哪些数据类型,不能存哪些数据类型?
当时那个汗啊,因为,平常使用Bundle,要么使用基本数据类型,要么序列化自定义的Class,那到底能存哪些类型,不能存哪些呢?
今天查阅了下google官方的文档(http://developer.android.com/reference/android/os/Bundle.html),罗列了以下这些是可以的:
void putAll(Bundle map) void putBinder(String key, IBinder value) void putBoolean(String key, boolean value) void putBooleanArray(String key, boolean[] value) void putBundle(String key, Bundle value) void putByte(String key, byte value) void putByteArray(String key, byte[] value) void putChar(String key, char value) void putCharArray(String key, char[] value) void putCharSequence(String key, CharSequence value) void putCharSequenceArray(String key, CharSequence[] value) void putCharSequenceArrayList(String key, ArrayList<CharSequence> value) void putDouble(String key, double value) void putDoubleArray(String key, double[] value) void putFloat(String key, float value) void putFloatArray(String key, float[] value) void putInt(String key, int value) void putIntArray(String key, int[] value) void putIntegerArrayList(String key, ArrayList<Integer> value) void putLong(String key, long value) void putLongArray(String key, long[] value) void putParcelable(String key, Parcelable value) void putParcelableArray(String key, Parcelable[] value) void putParcelableArrayList(String key, ArrayList<? extends Parcelable> value) void putSerializable(String key, Serializable value) void putShort(String key, short value) void putShortArray(String key, short[] value) void putSparseParcelableArray(String key, SparseArray<? extends Parcelable> value) void putString(String key, String value) void putStringArray(String key, String[] value) void putStringArrayList(String key, ArrayList<String> value)
一目了然:MAP,基本数据类型,基本数据类型数组,Parcelable类型及Parcelable类型数组,Serializable类型(无Serializable类型数组!),ArrayList
从以上发现,数据存储在连续的内存地址上的可以使用,其它存储方式不行(如链表存储就不行)。
如果有说错的地方,希望大家纠正,谢谢!
更多相关文章
- Android(安卓)单页面 音乐播放器和电影播放
- Android定制ListView的界面(使用继承自ArrayAdapter的自定义适配
- Android(安卓)中的ORM框架
- [置顶] Android(安卓)开发中Parcel存储类型和数据容器
- Android中获取手机支持的硬件解码器类型以及对应的解码器名称
- Android小案例——简单图片浏览器
- SQlite字段类型升级
- Android之设置EditText输入类型(setInputType()方法和android:in
- Android下创建一个sqlite数据库