存储对字符串的引用

2024-04-25

我有一个具有 3 个字符串属性的类。我想将它们存储在一个列表中,以便当我更改列表的字符串时,它们也会在类中更新。

如果我使用类对象,这很容易做到,但字符串似乎表现不同。它似乎为列表创建了对象的副本,而不是拥有指向该对象的指针。如果是 C# 我该怎么做?如果这不可能,还有更好的方法吗?


问题在于strings 是它们是不可变的。换句话说,你永远无法改变string一旦它被创建。

因此,如果你想“改变”string,您必须从List,并将结果存储回列表中。例子:

string a = "abcdefg";
List<String> list = new List<String>();
list.add(a);

a = a.Substring(0, 5);

该代码什么也不做,因为string a指向永远不会改变。它只是指向一个新的string.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

存储对字符串的引用 的相关文章

  • 我的 std::hash for std::tuples...有什么改进吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 有些人可能已经注意到 std hash 不支持元组 所以我添加了一个重载 它看起来比我到目前为止看到的解决方案 更好 有人有进一步减少这段代码的
  • 如何查找给定字符串中仅出现一次的第一个字符[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • strtok() 使用安全吗[重复]

    这个问题在这里已经有答案了 我读到了很多负面的东西strtok 有人说它已经过时 有人说它不是线程安全的 等等 那么真相是什么 我可以使用吗strtok 它是线程安全的吗 Note 我正在使用 Visual C 您可以使用它 它是标准库的一
  • 信号与信号2

    我的应用程序可能会受益于使用 boost 的信号库之一而不是本土解决方案 该应用程序是多线程的 但执行信号处理的部分是单线程的 如果多线程不是问题 是否有任何理由更喜欢 Boost Signals2 而不是 Boost Signal Boo
  • 选择initializer_list迭代器定义

    Why std initializer list
  • FluentAssertions ShouldNotThrow 无法识别异步方法/Func

    我正在尝试检查异步方法是否抛出具体异常 为此 我使用 MSTEST 和 FluentAssertions 2 0 1 我已经检查过这个关于 Codeplex 的讨论 http fluentassertions codeplex com wo
  • 检查两个函数或成员函数指针的签名是否相等

    我编写了一些代码来检查自由函数的签名是否等于成员函数的签名等 它比较提取的返回类型和函数参数 include
  • ASP.NET MVC 动作过滤器

    有谁知道即使在 CATCH 块中 ActionFilterAttribute 类的 OnResultExecuted 方法是否也会执行 ie CookiesActions public ActionResult Login Usuarios
  • 列表到优先队列

    我有一个 C 大学编程项目 分为两个部分 在开始第二部分时应该使用priority queues hash tables and BST s 我 至少 在优先级队列方面遇到了麻烦 因为它迫使我自己重做第一部分中已经实现的许多代码 该项目是关
  • 如何在 C++ 运行时更改 QML 对象的属性?

    我想在运行时更改 QML 对象的文本 我尝试如下 但文本仍然为空 这是后端类 class BackEnd public QObject Q OBJECT Q PROPERTY QString userFieldText READ userF
  • 节点*链表中的下一个

    我是数据结构和算法的新手 我遇到了以下代码 typedef struct node int data node next 谁能告诉我为什么我们要声明节点 next next 不能声明为 int next 吗 因为你希望能够做到n gt ne
  • 如何禁用基于 ValidationRule 类的按钮?

    如何禁用基于 ValidationRule 类的 WPF 按钮 下面的代码可以很好地突出显示 TextBox
  • 在 C# .NET 中对非 ASCII 字符进行编码

    我想向我的应用程序发送的电子邮件添加自定义标头 标头名称只能包含 ASCII 字符 但对于值和用户可能会输入 UTF 8 字符 我必须对它们进行 Base64 编码 此外 我还必须将它们解码回 UTF 8 以便在 UI 中向用户显示它们 最
  • 使用 cmake 将两种解决方案合二为一

    我有两个单独的 Visual Studio 2013 解决方案 我想将它们迁移到一个解决方案中 因为第一个解决方案 使用 Qt 充当第二个解决方案的 GUI 最后 我希望有一个结构如下的单一解决方案 Solution All Build P
  • 应在堆栈上分配的最大数量

    我一直在寻找堆栈溢出有关应在堆栈上分配的最大内存量的指南 我看到了堆栈与堆分配的最佳实践 但没有关于应该在堆栈上分配多少以及应该在堆上分配多少的指南 有什么想法 数字可以作为指导吗 什么时候应该在堆栈上分配 什么时候应该在堆上分配 多少才算
  • 实体框架读取列但阻止其更新

    给定一个数据库表 其中有一列包含历史数据但不再填充 实体框架中是否有一种方法可以读取该列 但在使用相同的模型对象时防止它被更新 例如我有一个对象 public class MyObject public string CurrentData
  • 如何释放字符串未使用的容量

    我正在程序中处理很多字符串 这些字符串数据在读入我的程序后的整个生命周期内都不会改变 但由于 C 字符串保留了容量 因此浪费了大量肯定不会被使用的空间 我尝试释放这些空间 但没有成功 以下是我尝试过的简单代码 string temp 123
  • 如何重用具有稍微不同的 ProcessStartInfo 实例的 Process 实例?

    我有以下开始的代码robocopy https technet microsoft com en us library cc733145 aspx as a Process 我还需要进行数据库查询以确定每次需要复制哪些目录robocopy被
  • 在 LP2844Z(Zebra 打印机)上的收据中包含 PNG [重复]

    这个问题在这里已经有答案了 我正在致力于创建一个基于 HTML5 画布的签名 绘图框 目前我们在服务器上将画布保存为PNG 但可以轻松地将base64字符串保存在数据库中 现在的问题是我们如何在打印的收据上添加签名 目前我们使用 GF 字段
  • 如何通过API退出Win32应用程序?

    我有一个使用 Win32 API 编写的 C Win32 应用程序 我希望强制它在其中一个函数中退出 有没有类似的东西Exit or Destroy or Abort 类似的东西会终止它吗 哎呀呀呀呀呀呀 不要做任何这些事情 exit 和

随机推荐

  • 如何将一个 xaml 页面导航到另一页面?

    我有 2 个页面 我需要将 mainpage xaml 导航到 login page xaml 但它让我崩溃你调用的对象是空的 在 Root Children Clear 我在 App xaml 中添加了以下代码 private void
  • asp.net mvc数据注释验证url

    有人可以告诉我如何验证一个网址吗http www abc com http www abc com 让 System Uri 为您完成繁重的工作 而不是 RegEx public class UrlAttribute ValidationA
  • vs2010 C++ 尾调用优化

    考虑以下代码 int fac aux int x int res if x 1 return res else return fac aux x 1 res x int fac int x return fac aux x 1 int ma
  • 调用视图文件时如何传递参数?

    我使用 Sinatra 和 Haml 编写了一个 Web 表单 用于调用 Ruby 脚本 一切看起来都很好 除了一件事 我需要从 Sinatra Ruby 脚本将参数传递给 Haml 视图文件 这是我的代码的一部分 usr bin env
  • 在本地系统上模拟多个用户/提交者

    从我的书中 我试图学习如何在本地系统本身上模拟多个 git 用户 我 将假装是所有这些多个用户 我按照书中的说明模拟多个用户对存储库提交更改 本书的输出显示了两个不同的人git log是 被执行 但是 我的输出仅显示一个用户 那就是我 如何
  • 尝试使用 qemu-arm 运行arm二进制文件时如何解决“加载共享库时出错”?

    我正在运行 Linux Mint 14 并安装了 qemu qemu user 和 gnueabi 工具链 我编译了 test carm linux gnueabi gcc test c o test 当我尝试跑步时qemu arm usr
  • 如何使用 Arm 模板获取应用服务中的主体 Id?

    您好 我正在编写 ARM 模板来部署我的应用程序服务 我想在我的手臂模板中创建系统标识 在应用程序服务臂模板部分中 我有以下代码 identity principalId reference variables identity resou
  • 在 Jersey Rest 中使用 @Consume 和 GET 请求

    我正在尝试将 GET 请求中的值绑定到 POJO 这些值是 HTTP GET 请求中的参数 我使用 JSONP 来传递参数 但看起来 JSONP 将 JSON 对象推到请求行上 因此它实际上并不是正在发送的 JSON 对象 而只是 URL
  • JavaFX Span Tableview 通过 MapEntries 合并单元格

    你好 我有以下地图 Map
  • 在 Android Oreo 及更高版本上根据 FCM 通知唤醒我的应用程序

    我的应用程序的一个重要部分是处理即时消息并接收 FCM 通知 应用程序如何在收到高重要性通知后唤醒几秒钟 从服务器进行短暂的提取并返回到之前的状态 我看过很多理论解释 但没有真正的源代码示例来实现这一点 有人可以帮忙吗 Extend Fir
  • 如何让键盘显示返回键?

    我想我已经尝试了所有组合 但我无法让字母键盘显示返回键 它始终是一个 完成 按钮 没有什么用处 在 Nexus 7 4 1 上 情况更糟 并显示一个愚蠢的笑脸按钮和 完成 按钮 这对我的应用程序没有任何意义 只要有返回按钮 就可以有 完成
  • 如何将欢迎页面设置为 struts 操作?

    我有一个基于 struts 的 web 应用程序 我希望默认的 欢迎 页面成为一个操作 我发现的唯一解决方案似乎是使欢迎页面成为包含操作重定向的 JSP 例如 在web xml
  • AsyncTask 真的在概念上存在缺陷还是我只是错过了一些东西?

    我已经研究这个问题几个月了 提出了不同的解决方案 但我对此并不满意 因为它们都是大规模的黑客攻击 我仍然不敢相信一个设计上有缺陷的类进入了框架并且没有人谈论它 所以我想我一定是错过了一些东西 问题在于AsyncTask 根据文档它 允许执行
  • Hadoop setInputPathFilter错误

    我正在使用 Hadoop 0 20 2 无法更改 并且我想向我的输入路径添加一个过滤器 数据如下 path1 test a1 path1 test a2 path1 train a1 path1 train a2 我只想处理所有文件trai
  • 对于来自 Vevo 的视频,Youtube IFrame API onError 触发,错误代码为 150

    让我解释一下我的情况 我想用YouTube IFrame API https developers google com youtube iframe api reference在我的网站上嵌入一些视频 我用id测试了视频wdGZBRAWW
  • 如何启动docker容器(ubuntu镜像)

    如何统计 Docker 容器 我是用它创建的 docker run d P v Users bsr usr local users name test ubuntu 我确实安装了虚拟盒来宾附加功能 并且安装工作正常 但是 我不知道为什么我不
  • 将业务层与数据层分离时对实体进行限制的位置

    我正在尝试为我的大型 ASP NET MVC 应用程序创建业务层和数据层 因为这是我第一次尝试这种规模的项目 所以我正在阅读一些书籍 并努力小心地将事物正确地分开 通常 我的应用程序混合了业务逻辑和数据访问层 并且多个业务实体在单个类中交织
  • Android 在 ScrollView 上 PullTo 刷新

    我知道类似 pullToRefresh 的功能在 iPhone 中可用 而对于 Android 我们必须手动管理它 我得到了一些使用 pullToRefresh 的示例 但它仅适用于 ListView 就我而言 我想实现滚动视图 Googl
  • 哪些浏览器支持console.log()?

    所有浏览器都支持这个吗 我想使用输出错误console log 但想知道是否所有浏览器都支持此功能 console log Error etc 不 并非所有浏览器都支持console log因为它不是标准的一部分 而是 DOM 的扩展 因此
  • 存储对字符串的引用

    我有一个具有 3 个字符串属性的类 我想将它们存储在一个列表中 以便当我更改列表的字符串时 它们也会在类中更新 如果我使用类对象 这很容易做到 但字符串似乎表现不同 它似乎为列表创建了对象的副本 而不是拥有指向该对象的指针 如果是 C 我该