gpt4 book ai didi

c# - 从字典中复制对对象的引用还是直接从字典中访问它更快?

转载 作者:太空狗 更新时间:2023-10-29 20:01:27 25 4
gpt4 key购买 nike

问题很简单

是这段代码吗

public Dictionary<string, SomeObject> values = new Dictionary<string, SomeObject>();

void Function()
{
values["foo"].a = "bar a";
values["foo"].b = "bar b";
values["foo"].c = "bar c";
values["foo"].d = "bar d";
}

和这段代码一样快

public Dictionary<string, SomeObject> values = new Dictionary<string, SomeObject>();

void Function()
{
var someObject = values["foo"];
someObject.a = "bar a";
someObject.b = "bar b";
someObject.c = "bar c";
someObject.d = "bar d";
}

常识告诉我,在字典中查找一次引用并将其存储在某个地方应该会更快,这样就不需要多次查找,但我真的不知道字典是如何工作的。

那么它是快还是不快?为什么?

最佳答案

是的,你是对的。您的第一种方法进行字典查找 4 次,而第二种方法进行一次。第二个肯定更好。

然而,在现实生活中,字典查找的速度快得离谱,所以除非你有一本庞大的字典,否则差异不会很明显,甚至可能无法衡量。

关于c# - 从字典中复制对对象的引用还是直接从字典中访问它更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15435636/

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