stringbuilder_string和stringBuilder的区别
LOGO
string和stringBuilder的区别
2020.09.09
string对象
String 对象是不可改变的。每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。
stringbuilder对象
StringBuilder 对象是动态对象,允许扩充它所封装的字符串中字符的数量,但是您可以为它可容纳的最大字符数指定一个值,当修改 StringBuilder 时,在达到容量之前,它不会为其自己重新分配空间。当达到容量时,将自动分配新的空间且容量翻倍。
两者之间的不同
工 作原理不同:String 类是一种传统的修改字符串的方式,它确实可以完成把一个字符串添加到 另一个字符串上的工作没错,但是在.NET 框架下,这个操作实在是划不来。因为系统先是把 两个字符串写入内存,接着删除原来的 String 对象,然后创建一个 String 对象,并读取内存 中的数据赋给该对象。这一来二去的,耗了不少时间。而使用 System.Text 命名空间下面的 StringBuilder 类就不是这样了,它提供的 Append 方法,能够在已有对象的原地进行字符串 的修改,简单而且直接
注意
string 对象时恒定不变的,stringBuider对象表示的字符串是可变的。stringBuilder是.net提供的动态创建string的高效方式,以克服string对象恒定性带来的性能影响。
但是对于简单的字符串连接操作,在性能上stringBuilder并不一定总是优于string。因为stringBuider对象创建代价较大,在字符串目标连接较少的情况下,过度滥用stringBuilder会导致性能的浪费,只有大量的或者无法预知次数的字符串操作,才考虑stringBuilder来实现。
stringbuilder_string和stringBuilder的区别相关推荐
- String、StringBuffer、与StringBuilder的区别
原文:http://www.cnblogs.com/sevenlin/p/sevenlin_StringBuffer_StringBuilder20150806.html String.StringB ...
- php 有 stringbuffer,string,stringbuffer以及stringbuilder的区别
string,stringbuffer以及stringbuilder的区别? 小编在一次电话面试中,被问过StringBuilder是线程安全的吗,脱口而出是安全的,结果人家质疑我你是2年开发经验吗. ...
- JavaSE(二十五)——String与StringBuffer、StringBuilder的区别、创建对象的几种方法、Http和Https的区别
文章目录 1. String与StringBuffer.StringBuilder的区别 2. Java创建对象的几种方法 3. Http和Https的区别 1. String与StringBuffe ...
- String,StringBuffer与StringBuilder的区别
String,StringBuffer与StringBuilder的区别 String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全 ...
- string 与stringbuilder的区别
string 与stringbuilder的区别 C# String 对象是不可改变的.每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就 ...
- c#中的string和StringBuilder的区别
string和StringBuilder的区别 解析c#中的string和StringBuilder的区别,只有非常了解后我们才能更好的编程和灵活使用. 区别 1.类 String 表示字符串, 比如 ...
- String、StringBuffer和StringBuilder的区别
String.StringBuffer和StringBuilder的区别: 文章目录 String StringBuffer StringBuilder StringBuffer是如何实现线程安全的呢 ...
- 【翻译】Java中String, StringBuffer, StringBuilder的区别
2019独角兽企业重金招聘Python工程师标准>>> String 是 Java 中最重要的类之一,并且任何刚开始做Java编程的人,都会 用String定义一些内容,然后通过著 ...
- stringbuilder_String,StringBuilder,StringBuffer三者的区别?
(1) 问题分析 考官主要想对final修饰符的作用,同步锁,以及数据类型的考察.在工作中为什么业务层频繁的拼接sql不用string而用StringBuilder,为什么Stringbuilder比 ...
最新文章
- 四 s5p4418 Android 对can总线的支持 支持波特率修改
- 【Linux网络编程】并发服务器之多进程模型
- (35)VHDL实现JK触发器
- hsrp+route-map 解决多路由器多isp
- python能自学成功吗-想自学Python,如何才能坚持下来?
- 基于DEM数据的河流提取
- stm32矩阵键盘学习笔记
- 日历之 poj1008玛雅日历
- 群晖nas介绍文档_我的NAS我的地盘 篇三:群晖NAS软件介绍与应用之DS file篇
- m3u8转换到mp4 python_Python 实现MP4视频转M3u8视频
- 华为java一个月写多少行代码_[财经]阿里员工吐槽华为:面试官1万行代码都没写过? - 南方财富网...
- domian index域索引和全文索引
- Linux OS7 常用
- HTML语言中代表网页标题的标签是,html标题标记 在html中,标题标签一共有几级?
- 在excel文件上设置下拉选项
- python从文件中读取数据_【Python】从文件中读取数据
- 送书送书送书,(包邮)送,仅此而已!
- 数据结构中树的直径问题
- maven详解2020
- STM32白话文教程(三)内置按键模块、外接按键检测 三句话让你玩明白按键 水银倾斜模块
热门文章
- 后置增强this advice advises no methods_增强消防意识 提高消防能力 重庆天一新城小学积极参加消防技能比赛活动...
- 跨境电商ERP管理,让你节约跟多时间!
- influxDB框架 数据存储 TSM 数据操作等详解
- vue如何使用原生js写动画效果_Vue中的动画效果
- python中协程与函数的区别_python协程和异步IO
- form表单input使用disabled后提交不能获取表单值的解决方法
- Mybatis-Plus代码生成器初体验
- 3说明书_怎么才能做好产品说明书翻译?知行翻译公司总结了3点
- [Ext JS 4] MVC 应用程序框架
- jqGrid 实现这种select - 同一列的不同行的select 的option 不同