gpt4 book ai didi

java - 这个 ContentValues 的重复实例是多余的吗?

转载 作者:行者123 更新时间:2023-11-29 03:44:01 24 4
gpt4 key购买 nike

this NotePadProvider sample code ,我注意到 ContentValues 参数是重复的,即使它不为空:

ContentValues values;
if (initialValues != null) {
values = new ContentValues(initialValues);
} else {
values = new ContentValues();
}

从表面上看,这看起来是多余的。看起来只写会更有效率:

ContentValues values;
if (initialValues != null) {
values = initialValues;
} else {
values = new ContentValues();
}

但这不是样本作者选择做的,我的问题是为什么?

最佳答案

它们不等价。原始代码创建“initialValues”的副本,然后该方法继续修改​​变量 value 中的新实例。这样,提供给该 insert 方法的 ContentValues 实例不会被该方法修改。

您的版本确实修改了原始对象,这可能会在程序的其他区域产生不需要的副作用。

关于java - 这个 ContentValues 的重复实例是多余的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11831730/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com