iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >怎么使用C#的StringBuilder和string
  • 153
分享到

怎么使用C#的StringBuilder和string

2023-06-25 13:06:44 153人浏览 薄情痞子
摘要

本篇内容主要讲解“怎么使用C#的StringBuilder和string”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用C#的StringBuilder和string”吧!1.string

本篇内容主要讲解“怎么使用C#的StringBuilder和string”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用C#的StringBuilder和string”吧!

1.string是引用类型还是值类型

MSDN官方说string是引用类型;

  • 引用类型:引用分配栈内存,引用类型本身的数据存储在堆中;

  • 值类型:在函数中创建,栈内存;类中成员变量堆类型;

从c底层内存分析,string本质是char*数组

char*不开堆,直接“ ”赋值存储在常量内存区;

常量内存区在程序结束后由系统统一释放;

string赋值和char*一样,直接存储在常量内存;

因此一个string重新赋值并不是修改引用指向,而是在常量内存去重新指向一个新的字符串,这个操作相当于重新创建了实例,性能不好;

2.StringBuilder

StringBuilder相当于char* a = new char[lenth];

开了一块堆内存专门存储字符串数据;

StringBuilder在创建对象时,可指定内存大小;

StringBuilder mStringBuilder = new StringBuilder("LittlePreilla",30);

当内存超出时,StringBuilder会自动将内存加倍;

mStringBuilder.Capacity = 10;  //设置内存mStringBuilder.EnsureCapacity(10); //检查内存,大于10不变,小于10改为10

3.StringBuilder使用

1)拼接

mStringBuilder.Append("aaa");mStringBuilder.AppendFORMat("aaa{0:D}",1012);
字符说明示例输出
C货币string.Format("{0:C3}", 2)$2.000
D十进制string.Format("{0:D3}", 2)002
E科学计数法string.Format(“{0:e}”,1.2)1.20E+001
G常规string.Format("{0:G}", 2)2
N用分号隔开的数字string.Format("{0:N}", 250000)250,000.00
X十六进制string.Format("{0:X000}", 12)C


string.Format("{0:000.000}", 12.2)012.200

2)插入

mStringBuilder.Insert(1,"DDD");  //index下表位置

3)移除

mStringBuilder.Remove(1,2);  //index下表位置开始,移除几位

4)替换

mStringBuilder.Replace("aaa","bbb");  我个人格式化输出更喜欢用正则表达式,也非常方便;int a = 10;string str = $"aaa{10}bbbb";//结果为 aaa10bbbb

到此,相信大家对“怎么使用C#的StringBuilder和string”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 怎么使用C#的StringBuilder和string

本文链接: https://www.lsjlt.com/news/305009.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • c语言怎么保证除完还是小数
    在 c 语言中,整数除法只能得到整数结果,要得到小数结果,需将操作数显式转换为浮点数:将一个操作数转换为浮点数,如 float result = num1 / (float)num2;将...
    99+
    2024-05-14
    c语言
  • c语言怎么让结尾不输出空行字符
    要阻止 c 语言程序结尾输出空行字符,可以使用以下方法:将 main 函数的返回值类型改为 void;在 main 函数中显式返回 0;调用 fflush(stdout) 函数刷新标准输...
    99+
    2024-05-14
    c语言
  • c语言怎么让结尾不输出空行数据
    在 c 语言中,可通过以下方法抑制 printf() 函数在程序结束时打印末尾空行:调用 fflush() 函数刷新缓冲区,立即输出所有数据;使用 setvbuf() 函数关闭缓冲,使数...
    99+
    2024-05-14
    c语言
  • c语言怎么让结尾无空行
    在 c 中去除结尾空行的方法:使用 fflush() 刷新缓冲区。使用 setvbuf() 将缓冲模式设置为 _ionbf。使用 printf 宏,它默认禁用缓冲。 如何在 C 语言中...
    99+
    2024-05-14
    c语言
  • c语言怎么输入实数赋值
    c语言中使用scanf()函数输入实数并赋值给变量:格式:scanf("%lf", &variable);%lf是格式说明符,指定输入双精度浮点数;&...
    99+
    2024-05-14
    c语言
  • c语言怎么表达负数
    c语言中,负数以减号 (-) 表示,放在数字或变量前。负数运算规则包括:绝对值取正数;加正数或负数,结果取决于绝对值大小;乘或除以正数或负数,结果由符号奇偶性决定。负数的平方始终为正数,...
    99+
    2024-05-14
    c语言
  • c语言怎么输入Jac数列
    jacobi 数列的输入和生成方法分别有:1. 直接输入法:使用 scanf() 函数逐项输入数列。2. 递归生成法:使用递归公式生成数列,需初始化数列的前两项,然后按公式生成后续项。 ...
    99+
    2024-05-14
    c语言
  • c语言怎么把数组变成字符串
    在 c 语言中,将数组转换成字符串的方法包括:使用 sprintf() 将数组格式化为字符串。使用 strcpy() 将数组复制到字符串。使用 strncpy() 将指定长度的数组复制到...
    99+
    2024-05-14
    c语言
  • c语言怎么批量注释
    批量注释 c 语言代码的方法有:使用代码编辑器:使用快捷键或菜单命令自动添加 // 注释符号。使用注释工具:如 doxygen 和 cutter,批量添加行注释、块注释和文档注释。使用脚...
    99+
    2024-05-14
    python sublime c语言
  • c语言怎么把选中的全部注释
    c语言中注释选中内容可通过以下步骤实现:选中要注释的代码。根据使用的编辑器或ide,执行注释操作,例如在visual studio中右键单击并选择“注释所选内容”。添加注释内容。保存更改...
    99+
    2024-05-14
    sublime c语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作