C#中string,String,StringBuilder的学习笔记

关于C#中的 string ,String,StringBuilder

初学C#时,面对很多语法,尤其是在学习C#之前接触并做过几个Java项目的时候,觉得有些语法和Java相似,有些也不尽相同,但大体上还是有些相似,且C#作为真正入门编程语言,面对刚接触的第一段代码,我便有很多疑问,老师告诉我,他不会告诉我太多,只能让我在不断写的过程中慢慢理解,所以在此之前,因为自己的无知造成误会,以及对他人造成误导,深感抱歉,与此同时,我也明白了,技术的严谨性,不容我们马虎,人云亦云,一定要认真钻研对待。

1.string与String

string通俗来说,和Java里一样,定义字符串变量的,

string是c#中的类

String,对于我当前接触的项目,代码来说,接触的比较少,前期接触过一次。

String是Framework的类,

1.)C# string 映射为 Framework的 String。如果用string,编译器会把它编译成String,所以如果直接用String就可以让编译器少做一点点工作。 如果使用C#,建议使用string,比较符合规范 

2.)string是关键字,String不是,也就是说string不能作为类、结构、枚举、字段、变量、方法、属性的名称,而String可以

3.)string 关键字是 String 的别名,String 和 string 是等效的

4.)String类提供了安全创建、操作和比较字符串的多种方法

5.)字符串对象是“不可变的” :它们在创建后无法更改。 看起来是在修改字符串的所有 String 方法和 C# 运算符实际上都是在新的字符串对象中返回结果。

2.StringBuilder与Sting

字符串一旦创建就不可修改大小,所以对字符串添加或删除操作比较频繁的话。那就不要用String而用StringBuilder。

String一旦赋值或实例化后就不可更改,如果赋予新值将会重新开辟内存地址进行存储。

所以我们在声明结果集,sql语句时,用StringBuilder。

 StringBuilder 类创建字符串缓冲区,用于在程序执行多个字符串操控时提升性能。 使用 StringBuilder 字符串,还可以重新分配各个字符,而内置字符串数据类型则不支持这样做。

因此:当需要进行频繁修改字符串的操作时先建立StringBuffer类对象进行操作,将最后结果转化成String类对象返回,这样效率会高很多。如: MySqlHelp.GetDataSet(connStr, CommandType.Text, sqlCmd.ToString();

3.关于stringBuffer

C#有类似JavastringBuffer的System.Text.StringBuilder 类型。

可参照网站https://docs.microsoft.com/zh-cn/dotnet/api/system.text.stringbuilder?view=netframework-4.8

 

 

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值