初始化

string str = string.Empty; // 建议
string str = "";           // 不建议

是否为空或空字串

如果我自己无法确定 string 一定不会为 null,我会使用

if (string.IsNullOrEmpty(str)) // string 自带静态函数 可以判断 null 及 空字串
{}

以下判断 需先保证 str 不能为 null,要不然会报错

if (str.Length == 0) // 建议 速度最快
{}
if (str == string.Empty) // 不建议
{}
if (str == "")  // 不建议
{}

是否相等

目前作者还不确定 == 和 Equals 哪个好,但是“倒着比较”可以避免 NullReferenceException 错误

if ("123".Equals(str)) // 建议
{}
if (str.Equals("123")) // 不建议
{}

是否包含

是否包含可以使用 Contains 以及 IndexOf
Contains 返回 bool 值 包含 返回 true 不然 false
IndexOf 返回 该字串所在的位置 包含 返回 该字串所在的索引 从 0 开始 不然 -1
个人喜好用 Contains 理由是 个人觉得是否包含答案应该只有 包含 或 不包含,
但 IndexOf 则返回位置 而且判断 >= 0 也不直观,所以作者青睐使用 Contains

if (str.Contains("s")) // 青睐
{}if (str.IndexOf("s") >= 0) // 不青睐
{}

字符串拼接

短拼接
首推 $ 可见性高

string str = "456";
string str2 = $"123{str}";

其次 Format 效率高,但拼接数量一多不好,可视化

string str = "456";
string str2 = string.Format("123{0}",str);

普通 +

string str = "456";
string str4 = "123" + str;

长拼接 循环拼接字串时 建议使用

StringBuilder strb = new StringBuilder();
strb.Append(str);

C# 字符串 string相关推荐

  1. Go 学习笔记(31)— 字符串 string、字符 rune、字节 byte、UTF-8 和 Unicode 区别以及获取字符串长度

    1. 字符串 string 类型 Go 语言中字符串的内部实现使用 UTF-8 编码,通过 rune 类型,可以方便地对每个 UTF-8 字符进行访问.当然, Go 语言也支持按照传统的 ASCII ...

  2. R语言unlist函数将复杂数据(list列表、dataframe、字符串String)对象处理成简单向量vector形式:将包含dataframe和字符串的向量列表转换为单个向量(删除数据名称)

    R语言unlist函数将复杂数据(list列表.dataframe.字符串String)对象处理成简单向量vector形式:将包含dataframe和字符串的向量列表转换为单个向量(删除数据名称) 目 ...

  3. .NET(C#)时间日期字符串(String)格式化转换成Datetime异常报错问题

    .NET(C#)时间日期字符串(String)格式化转换成Datetime异常报错问题 参考文章: (1).NET(C#)时间日期字符串(String)格式化转换成Datetime异常报错问题 (2) ...

  4. 【C++ 语言】C++字符串 ( string 类 | 创建方法 | 控制台输出 | 字符串操作 | 栈内存字符串对象 | string* )

    文章目录 C++ 字符串 对象 C++ 字符串 对象 创建方法 C++ 字符串 对象 输出到控制台 C++ 字符串 拼接 C++ 字符串 方法调用 ( 栈内存对象 ) C++ 字符串 方法调用 ( 堆 ...

  5. Java常量字符串String理解

    Java常量字符串String理解 以前关于String的理解仅限于三点: 1.String 是final类,不可继承 2.String 类比较字符串相等时时不能用" == ",只 ...

  6. Java学习笔记(六)--字符串String类

    文章目录 字符串 一.String 类 1.1 声明字符串 1.2 创建字符串 二.连接字符串 2.1 连接多个字符串 2.2 连接其他数据类型 三.获取字符串信息 3.1 获取字符串长度 3.2 字 ...

  7. openresty开发系列18--lua的字符串string操作

    openresty开发系列18--lua的字符串string操作 string的相关操作 1)string.upper(s) 接收一个字符串 s,返回一个把所有小写字母变成大写字母的字符串. prin ...

  8. C语言标准字符char和字符串string

    C语言标准字符char和字符串string atof atoi atol isalnum isalpha iscntrl isdigit sgraph islower isprint ispunct ...

  9. istringstream字符串流,实现类似字符串截取的功能,字符串流中的put,str()将流转换成为字符串string

     1. istringstream字符串流 #include <iostream> #include <sstream> #include <string> u ...

  10. Java基础之字符串String:

    String ----------------------------------------------------------------------------------------- 一.S ...

最新文章

  1. 放弃51单片机,直接学STM32开发会有什么严重的问题?
  2. 多模块后带来的问题解决方法 - OSGI原形(.NET)
  3. python中文意思k-python中“//”表示什么意思_后端开发
  4. 现在的位置就是对的啊,意思就是当鼠标放上去的时候,停止滚动,鼠标离开,继续滚动(跑马灯项目功能)...
  5. 0402封装ESD二极管选型
  6. Moblieye副总裁交流纪要
  7. Hash Function
  8. python 最小二乘回归 高斯核_「机器学习」一文读懂线性回归、岭回归和Lasso回归...
  9. 彻底告别“人工+Excel”低效模式,传统制造业实现“一站式”数据化管理
  10. 404 Note Found 队 Alpha8
  11. 《人人都是产品经理》——第一章笔记
  12. C# 截图ScreenCapture,保存
  13. 什么软件可以搜C语言题答案,大学c语音搜题app
  14. 达梦数据库巡检脚本--生成html格式的报告
  15. 【Unity Editor编辑器】 代码获取project面板选中资源路径(自定义右键菜单)
  16. 信息安全第五章 操作系统安全
  17. 《30天自制操作系统》---第一天
  18. Centos7.9最小化安装与初始化环境配置
  19. Halcon学习(3)读取图片操作
  20. 轻文章-维修2台IBM服务器

热门文章

  1. 车载音频总线A2B介绍
  2. 2022微软暑期实习笔试
  3. Python批量获取基金数据
  4. 苹果x css适配,CSS如何适配iPhone全面屏 CSS适配iPhone全面屏方法
  5. java pkcs7 和 pkcs5_PKCS5Padding与PKCS7Padding的区别
  6. linux彻底删除mysql(亲测)
  7. Vue (十五) --------- UI 组件库
  8. 「GATK 4」如何提高HaplotyperCaller的效率
  9. 计算机等级考试证件照怎么做,2019年9月各省全国计算机等级考试报名照片要求...
  10. 机器学习算法与Python实践之 k均值聚类(k-means)