c# - C#中,多个容器中的同一个字符串是否指向同一个位置

标签 c# reference

考虑以下 C# 代码:

String a = "hello world";
List<String> ListA = new List<String>();
List<String> ListB = new List<String>();
ListA.Add(a);
ListB.Add(a);

我的问题是:两个列表中的两个字符串是否实际上指向内存中的同一个位置?换句话说,对于同一个字符串有多个容器的额外内存只是关于引用(指针)而不是字符串的实际内存?

谢谢。

最佳答案

在您的代码中,a 是对字符串的引用。将相同的引用添加到两个列表将引用相同的内存位置。

关于c# - C#中,多个容器中的同一个字符串是否指向同一个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33788029/

相关文章:

c# - Firefox 无法下载正确显示的 blob PDF

c# - 大括号匹配和引用突出显示突然停止工作(VS2013)

java - 对 ArrayList 对象的引用数组

c++ - 我可以修改作为参数传递的指针的目标吗?

java - 如何在 Optional.map() 中使用方法引用

xamarin - 使用隐藏在 Xamarin.Forms 中的 C# 代码访问控件

c# - 向接口(interface)/实现添加事件

c# - 游戏架构 - 耦合还是不耦合?

c# - 我可以安全地绑定(bind)到多线程应用程序上的数据吗?

.net - 何时加载引用的程序集?