我正在尝试创建以通用方式遍历所有Bundle对象的辅助方法。
“通用”是指:
- 不需要知道 Bundle 中作为参数传递的对象的名称(键)。
- 如果将来将另一个成员(密钥)添加到 Bundle 中,则不需要更改。
到目前为止,我想出了以下大纲来实现这一点:
private void bundleToSharedPreferences(Bundle bundle) {
Set<String> keys = bundle.keySet();
for (String key : keys) {
Object o = bundle.get(key);
if (o.getClass().getName().contentEquals("int")) {
// save ints
}
else if (o.getClass().getName().contentEquals("boolean")) {
// save booleans
}
else if (o.getClass().getName().contentEquals("String")) {
// save Strings
}
else {
// etc.
}
}
}
这种方法是否有意义?
有没有更好的方法来实现这一点?