曾经被问到这样一个问题: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 Bundle存储数据类型的更多相关文章

  1. Android SharedPreferences存储

    原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_SharedPreferences.html 一 概念 SharedPreferen ...

  2. android之存储篇——SQLite数据库

    转载:android之存储篇_SQLite数据库_让你彻底学会SQLite的使用 SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么. 例如:可以在In ...

  3. Android数据存储的五种方法汇总

    本文介绍Android中的5种数据存储方式. 数据存储在开发中是使用最频繁的,在这里主要介绍Android平台中实现数据存储的5种方式,分别是: 1 使用SharedPreferences存储数据 2 ...

  4. Android 数据存储五种方式

    1.概述 Android提供了5种方式来让用户保存持久化应用程序数据.根据自己的需求来做选择,比如数据是否是应用程序私有的,是否能被其他程序访问,需要多少数据存储空间等,分别是: ① 使用Shared ...

  5. android bundle存放数据详解

    转载自:android bundle存放数据详解 正如大家所知道,Activity之间传递数据,是将数据存放在Intent或者Bundle中 例如: 将数据存放倒Intent中传递: 将数据放到Bun ...

  6. android 数据存储Ⅱ

    本章继续讲解在Android开发中,数据的存储与管理.涉及知识点:SQLite,SwipeRefreshLayout控件刷新. 1.功能需求 练习使用SQLite 做一个登录界面,数据库字段包含用户名 ...

  7. Android数据存储-通过SharedPreferences实现记住密码的操作

    在Android中登陆中,为了实现用户的方便,往往需要根据用户的需要进行记住密码的操作,所以,在Android数据存储中SharedPreferences恰恰可以实现这一点 下面,小编将带领大家通过S ...

  8. Android数据存储:Shared Preferences

    Android数据存储之SharedPreferences 在Android系统中提供了多种存储技术.通过这些存储技术可以将数据存储在各种存储介质上, Android 为数据存储提供了如下几种方式:1 ...

  9. Android 数据存储01之SharedPreferences

    Android 数据存储01之SharedPreferences 版本 修改内容 日期 修改人 V1.0 原始版本 2013/2/20 skywang 1 SharedPreferences概括 Sh ...

随机推荐

  1. Python168的学习笔记3

    list.extend(),可以拓展list,a=(0,1),b=(2,3) a.extend(b),a就变成(0,1,2,3) 分割字符串(除去字符串中的,\/;之类的),如果用str.split( ...

  2. python开发_tkinter_菜单选项中英文切换_菜单选项不可用操作_博主推荐

    我使用的python版本为:3.3.2 如果你对python中tkinter模块的菜单操作不是很了解,你可以看看: python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推 ...

  3. CodeForces 128D Numbers 构造

    D. Numbers time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...

  4. 使用命令行编译和运行 c、Java和python程序

    集成开发环境已经非常方便,从编写程序到执行程序看到结果,让我们不用关心中间的过程.但是使用原始的.命令的方式来将程序编译运行有的时候可能有些用,比如写个简答的程序,或者是身边没有集成工具的时候. C语 ...

  5. ssh连接时提示THE AUTHENTICITY OF HOST XX CAN'T BE ESTABLISHED

    问题描述:使用ssh远程连接的时候报如下错误: 解决办法: 输入如下命令: ssh -o StrictHostKeyChecking=no root@123.59.xx.xx 输入密码,链接成功 其他 ...

  6. 怎么改变html中placeholderr的文字颜色

    <input type="text" placeholder="这里是提示文本" /> 设置的css代码: ::-webkit-input-plac ...

  7. SpringBoot读取配置properties配置文件

    见:http://www.cnblogs.com/VergiLyn/p/6286507.html

  8. Spring事务传播机制与隔离级别(转)

    Spring事务传播机制与隔离级别 博客分类: Spring   转自:http://blog.csdn.net/edward0830ly/article/details/7569954 (写的不错) ...

  9. 使用静态库的一些问题 -all_load

    1.使用类目在我们的静态库中涉及到 类目 catagory的使用时,会崩溃:此时我们需要设置project的Info里面的Link Flag处,增加-all_load,这样会链接所以存在的symbol ...

  10. 视图Ext.Viewport和窗口Ext.Window用法

    Viewport不需要再指定renderTo,而我们也看到Viewport确实填充了整个浏览器显示区域,并会随着浏览器显示区域大小的改变而改改.他有三个特点: 1).创建即可使用.不需要渲染,当组件在 ...