c# - Java和C#中StringBuilder的区别

标签 c# java stringbuilder

我正在将 Java 代码转换为 C#。 Java 中的 StringBuilder 类似乎比 C# 类有更多的方法。我对(比方说)Java 功能感兴趣

sb.indexOf(s);
sb.charAt(i);
sb.deleteCharAt(i);

这似乎在 C# 中缺失。

我想前两个可以建模为

sb.ToString().IndexOf(s);
sb.ToString().CharAt(i);

但是第三个会操作 sb 内容的副本而不是实际内容吗?

是否有一种通用的方法可以将此功能添加到所有缺失的方法中?

最佳答案

您可以使用 .charAt 的 Chars 成员集合。同样,您可以使用 .Remove(i,1) 删除位置 i 的单个字符。

关于c# - Java和C#中StringBuilder的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1548296/

相关文章:

java - 为什么String和StringBuilder/StringBuffer有不同的方法集?

java - StringBuffer 与 StringBuilder

c# - 枚举类模式是否与 DI 不兼容?

java - 如何在for循环中添加连字符

java - 在 Java 中使用 StringBuffer 和 StringBuilder 作为方法返回类型

java - 如何从 Firebase 存储获取 URL getDownloadURL

c# - StackExchange.Redis ConnectionMultiplexer.Connect() 间歇性工作

c# - 有效地将数组中的空字符串替换为空字符串

c# - EF Core 3.1 ExecuteSqlRaw/ExecuteSqlRawAsync 是否是 ExecuteSqlCommand/ExecuteSqlCommandAsync 的直接替代品?

string - 为什么在串联中 String 比 StringBuilder 更可取?