当前位置:   article > 正文

StringBuilder是否需要ToString()_不用tostring

不用tostring

这应该是一个快速的.我有一个像这样的StringBuilder:

StringBuilder sb = new StringBuilder();
  • 1

我像这样附加到我的StringBuilder:

sb.Append("Foo");
sb.Append("Bar");
  • 1
  • 2

然后我想让它等于一个字符串变量.我这样做是这样的:

string foobar = sb;
  • 1

或者像这样:

string foobar = sb.ToString();
  • 1

前者是懒惰还是后者添加的代码多于必要的?

在Java中,除了规范中的内容之外,您无法定义类型之间的隐式转换 - 因此您无法转换StringBuilder为String无论如何; 你得打电话toString().

在C#中,可能存在一个隐式的用户定义的转换StringBuilder和String(在任一StringBuilder或中定义String),但没有 - 所以你仍然需要调用ToString().

在这两种情况下,如果不调用相关方法,则会出现编译时错误.

在 C# 中你需要使用,string foobar = sb.ToString();否则你会得到一个错误:Cannot implicitly convert type ‘System.Text.StringBuilder’ to ‘string’

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/657500
推荐阅读
相关标签
  

闽ICP备14008679号