Java 中的 Bundle 是一个可以存储任何混合类型的列表,与 Set、Array 相比:Bundle 的各项数据类型不一样,而 Set、Array 各项数据类型必须一样。它和 C# 的 ArrayList 很像。
下面用示例说明了常用方法,注意备注。Bundle bundle = new Bundle();
bundle.putString("siteName", "千一网络"); // 添加项,其他类型用 putInt 等。
bundle.putString("siteUrl", "www.itpow.com"); // 添加项
bundle.putString("siteName", "千一网络2018"); // 由于前面已经存在 siteName,所以这里覆盖前面的 siteName。
bundle.remove("sitename"); // key 大小写敏感,对应的项不存在,既不会删除什么,也不会出错。
bundle.getString("siteName"); // 取字符串值,其他类型用 getInt 等。
bundle.size(); // 项数量
// 遍列
Set keys = bundle.keySet();
for (String key : keys) {
Toast.makeText(this, key + ":" + bundle.getString(key), Toast.LENGTH_LONG).show();
}
与 C# 相比,C# 添加项,用的是 Add,且不同数据类型都是这个方法(重载实现),而这里用的是 putString、PutInt 等。
总结:key 大小写敏感。
添加时 key 重复则覆盖前面的。
删除时 key 对应项不存在不会出错。