c# - 如果 StringBuilder 是可变的,那么为什么 StringBuilder 方法返回一个 StringBuilder 对象?

标签 c# .net vb.net

我们都知道字符串是不可变的而StringBuilder是可变的。正确的。那么为什么它的方法会返回一个 StringBuilder 对象。它们不应该都是 void 方法吗?

为什么会这样

public StringBuilder Append(bool value)

而不是

public void Append(bool value)

任何解释这个用法的例子都会很棒。

最佳答案

它叫做 "fluent interface" .它允许您通过重复的点符号将调用链接在一起。

return new StringBuilder()
  .Append("Hello, ")
  .Append("world!")
  .ToString();

关于c# - 如果 StringBuilder 是可变的,那么为什么 StringBuilder 方法返回一个 StringBuilder 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12317021/

相关文章:

c# - 添加对控制台应用程序的 Web 服务引用

c# - 处理 MailMessage 附件

C# 联锁交换

.net - Nhibernate 中的查询

c# - IoC 链中断

c# - 从 Azure 应用服务 FTP 到本地服务器上的文件夹

c# - 如何使用 .net 或 vba 在 excel 中使用的范围末尾插入新行?

c# - 异步.NET Console程序中的线程控制流

vb.net - 多语言和资源文件

java - 能否在 VB.Net 中的匿名类型对象中重写基类的方法?