Android Bundle存储数据类型
曾经被问到这样一个问题: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存储数据类型的更多相关文章
- Android SharedPreferences存储
原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_SharedPreferences.html 一 概念 SharedPreferen ...
- android之存储篇——SQLite数据库
转载:android之存储篇_SQLite数据库_让你彻底学会SQLite的使用 SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么. 例如:可以在In ...
- Android数据存储的五种方法汇总
本文介绍Android中的5种数据存储方式. 数据存储在开发中是使用最频繁的,在这里主要介绍Android平台中实现数据存储的5种方式,分别是: 1 使用SharedPreferences存储数据 2 ...
- Android 数据存储五种方式
1.概述 Android提供了5种方式来让用户保存持久化应用程序数据.根据自己的需求来做选择,比如数据是否是应用程序私有的,是否能被其他程序访问,需要多少数据存储空间等,分别是: ① 使用Shared ...
- android bundle存放数据详解
转载自:android bundle存放数据详解 正如大家所知道,Activity之间传递数据,是将数据存放在Intent或者Bundle中 例如: 将数据存放倒Intent中传递: 将数据放到Bun ...
- android 数据存储Ⅱ
本章继续讲解在Android开发中,数据的存储与管理.涉及知识点:SQLite,SwipeRefreshLayout控件刷新. 1.功能需求 练习使用SQLite 做一个登录界面,数据库字段包含用户名 ...
- Android数据存储-通过SharedPreferences实现记住密码的操作
在Android中登陆中,为了实现用户的方便,往往需要根据用户的需要进行记住密码的操作,所以,在Android数据存储中SharedPreferences恰恰可以实现这一点 下面,小编将带领大家通过S ...
- Android数据存储:Shared Preferences
Android数据存储之SharedPreferences 在Android系统中提供了多种存储技术.通过这些存储技术可以将数据存储在各种存储介质上, Android 为数据存储提供了如下几种方式:1 ...
- Android 数据存储01之SharedPreferences
Android 数据存储01之SharedPreferences 版本 修改内容 日期 修改人 V1.0 原始版本 2013/2/20 skywang 1 SharedPreferences概括 Sh ...
随机推荐
- TYVJ 1463 智商问题 分块
TYVJ 1463 智商问题 Time Limit: 1.5 Sec Memory Limit: 512 MB 题目连接 http://www.tyvj.cn/p/1463 背景 各种数据结构帝~ ...
- jsoncpp 0.5 ARM移植
1.下载jsonapp 0.5 https://github.com/open-source-parsers/jsoncpp 2.编译 platform 没有包含 arm 平台,需要把源码提取出来,独 ...
- OpenVPN原理及实践文章收集(转)
一.基本理论篇 vpn原理及实现--一般理论 vpn原理及实现--隧道的一种实现 vpn原理及实现--虚拟网卡构建vpn vpn原理及实现--tcp还是udp Linux平台VPN技术概论 Linux ...
- Nucleus PLUS任务调度
概述 Nucleus Plus内核(Kernel)的主要目的是管理实时任务的竞争执行(共享CPU),为应用提供各种便利,高速响应外部事件.Nucleus Plus的系统结构如图1所看到的,能够看出线程 ...
- transform,transition,animation 的混合使用——进阶
今天我们来讲述css3能够做成动画的最小独立单元,并且讲述如何使用这些独立的单元来构成一个‘高大尚’的组合动画. 这是我在网上找的一个案例,修改后的效果图,虽说不是特别的‘高大尚’,但我认为这也跟高大 ...
- MySQL数据库事务各隔离级别加锁情况--Repeatable Read && MVCC(转)
本文转自https://m.imooc.com/article/details?article_id=17289 感谢作者 上节回顾 上两篇记录了我对MySQL 事务 隔离级别read uncommi ...
- android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)
android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创) 一直想搞NDK开发却一直给其他事情耽搁了,参考了些网上的资料今天终于把 ...
- putty的保存功能如何使用
Putty的设置保存功能隐藏的实在太好了,原来在Connection菜单中修改设置后,并不能在该界面保存. 保存步骤: 1.需要点击Session菜单,选中下面的Default Setting. 2. ...
- C++中模板单例的跨SO(DLL)问题:RTTI,typeid,static,单例
(转载请注明原创于潘多拉盒子) C++的模板可以帮助我们编写适合不同类型的模板类,给代码的复用性提供了极大的方便.近来写了一个涉及单例的C++模板类,简化下来可以归结为以下的代码: template ...
- Vue Cli安装以及使用
因为公司项目要用vue框架,所以会用vue-cli来新建项目.用过vue的都知道,要全局安装vue以及脚手架vue-cli,然后执行vue init webpack projectname来新建v ...