在stringbuilder类型上正确使用子字符串

Wes*_*een 0 c#

我正在使用子字符串构建一串数据.我想要的数据格式是

[1,2,3,4,5,6,7,8,9,10]
Run Code Online (Sandbox Code Playgroud)

所以我按照以下方式构建它

StringBuilder sb = new StringBuilder();
sb.append("1,");
sb.append("2,");
sb.append("3,");
.
.
.
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是我想,在添加结束之前修剪最终结果].

我可以

sb.ToString();
sb.Substring(0, (sb.Length - 1));
sb += "]";
Run Code Online (Sandbox Code Playgroud)

但是使用+ =效率不高,因为这会创建一个新字符串.有没有更好的方法呢?

L.B*_*L.B 6

var str = "[" + String.Join(", ",Enumerable.Range(1,10)) + "]";
Run Code Online (Sandbox Code Playgroud)

  • 那就是linqtastic,+ 1 (3认同)
  • 但它并不是OP所要求的,因为它创建了新的字符串,并且即使它是样本数据,也只是不清楚OP只需要1到10之间的整数. (3认同)