当前位置: 首页 > news >正文

20250530-C#知识:String与StringBuilder

String与StringBuilder

string字符串在开发中经常被用到,不过在需要频繁对字符串进行增加和删除时,使用StringBuilder有利于提升效率。


1、String

  • string是一种引用类型而非值类型(某些方面像值类型)
  • 使用“==”进行两个string对象的比较时,会比较内容而非引用地址
  • 编译器会缓存相同字面量的字符串(如 “abc”),多个变量可能指向同一内存对象
string x = "abc";
string y = "abc";
Console.WriteLine(object.ReferenceEquals(x, y)); // 输出 True(同一对象)

以下是string类的常用方法(由AI生成):

在这里插入图片描述


2、StringBuilder及代码示例

  • 解决String字符串修改时在堆中反复分配新内存空间的问题
  • 使用前引入命名空间 System.Text
using System.Text;namespace LearnString
{internal class Program{static void Main(string[] args){//StringBuilder//解决String字符串修改时在堆中反复分配新内存空间的问题//使用前引入命名空间 System.TextStringBuilder sb = new StringBuilder("12345");  Console.WriteLine(sb.Capacity); //获取容量  16Console.WriteLine(sb.Length);   //获取长度  5Console.WriteLine(sb);  //12345//普通添加sb.Append("67");//格式化添加sb.AppendFormat("{0:F5}", 3.5);Console.WriteLine(sb);  //12345673.50000//指定位置插入sb.Insert(0, "a");Console.WriteLine(sb);  //a12345673.50000//删除指定位置字符串sb.Remove(1, 9);Console.WriteLine(sb);  //a50000//替换字符sb.Replace('a', 'v');//索引访问,修改字符串sb[sb.Length - 1] = 'c';sb[sb.Length - 2] = 'f';sb[sb.Length - 3] = 'k';Console.WriteLine(sb);  //v50kfc}}
}

3、参考资料

  1. 《唐老狮C#》

本篇结束,感谢您的阅读~

在这里插入图片描述

相关文章:

  • 算力租赁革命:弹性模式如何重构数字时代的创新门槛​
  • shadcn/ui
  • Python+requests+pytest接口自动化测试框架的搭建(全)
  • C# MySQL 实现多层级联数据迁移
  • 数据结构:导论
  • RK3399 Android7.1增加应用安装白名单机制
  • python进程hung住如何找到问题所在
  • 内存池学习(一)
  • 腾讯云开发者社区文章内容提取免费API接口教程
  • Hive的存储格式如何优化?
  • 计算机视觉入门:OpenCV与YOLO目标检测
  • CSS3前端入门(第三天)2D转换 transform
  • CAD多边形密堆积2D插件
  • 强化学习笔记总结(结合论文)
  • 设备远程调试新利器:御控网关开启PLC高效运维新时代
  • 书送希望 智启未来 —— 赛力斯超级工厂携手渝北和合家园小学校开展公益赠书活动
  • Python训练day34
  • 边缘计算网关在管网压力远程调控中的通信协议配置
  • 未来技术展望
  • 多模态大语言模型arxiv论文略读(100)
  • 建设完网站成功后需要注意什么问题/班级优化大师学生版
  • 网站按钮确定后图片怎么做/搜索引擎的设计与实现
  • 长春公司网站建设/网络推广精准营销推广
  • 顺德手机网站设计咨询/东莞做网站优化
  • 做网站需要用到哪些编程知识/淘宝运营培训机构
  • 申请注册公司需要哪些条件/杭州seo网站排名