字符串/ StringBuilder的你用什么音量一个比其他
-
22-07-2019 - |
题
这是星期五重构时间!
我有用于生成SQL语句的对象。
oDb.From被设置一次。然后,元数据可以添加加入(S)随着时间的推移,直到我们结合了这一切,并传回。
所以,Q是,做什么#的时候我把语法oDb.From + =前我sbFrom.Append取代它()
是#3,4,或15次?
或者是它真正的内容问题的长度,如果是的话是什么神奇#?
TIA
解决方案
读取 http://www.codinghorror.com/blog/archives/001218。 HTML
在StringBuilder
类是专为你在哪里建造庞大的字符串,而使用普通字符串连接真的会过于缓慢的情况。
有机会,对于排序字符串长度,你正在处理这真的不会让任何差别 - 只需使用任何你最熟悉的
其他提示
经验完全不科学的规则:我会做任何事情超过三个要素 - 不是因为业绩增长,而是出(希望)好习惯
。如果我有两个以上的元素添加到字符串,我几乎总是使用StringBuilder(我觉得,如果我追加超过两个,难免会出现更多的人们开始加入到我的代码......所以StringBuilder的是已经存在于它们)。
我说什么,你希望去了1-5MB的长度或任何分配地段小块的字符串。
这不是一个总不科学的 - 我在哪里在.NET字符串生成器实际上变成后5个串连更有效的时间阅读文章一次。这是当我通常使用一个字符串生成器。
此外 - 我认为真正的可读性进场对此,我也喜欢在一些情况下,字符串格式在两个
。我使用StringBuilder当生长在O(n)的级联的以算法的数量。 如果级联的数目为O(1),大部分时间的可读性受到白白(除如果字符串是非常大的,这是不很频繁)。
或者当我知道有一个字符串,将变得足够大。 (100K以上炭)