C# 字符串比较优化(StringComparison)


        因朋友极力推荐,近一年在一家国企上班。忙忙碌碌天天叨叨不停,就是不写代码。现在之前的基础都忘差不多了,不感慨了,静静的补课吧!


一,优化举例

二,浅谈StringComparison

三,C# CultureInfo 类 各国语言对应的区域性名称

 

一,优化举例

我们在写程序的时候,经常会用到字符串对比。例如:if(IsCheck  =="true")

当大小写敏感的时候一般都用:

string.ToLower()或者string.ToUpper()变成统一的大小写模式再来比对数据。

 

其实这样不是很好比较方式,字符串在进行大小写转换时会消耗额外的性能。

我们应该使用:

string.Equals(dr["IsSelected"].ToString(),"true", StringComparison.OrdinalIgnoreCase)

来进行比较,以提升比较性能

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
C# 中,字符串的 CompareTo() 方法用于比较两个字符串,并返回一个整数值,表示比较结果的大小关系。该方法有多个重载形式,其中一个重载形式允许指定比较规则。 默认情况下,CompareTo() 方法使用当前文化(Culture)下的比较规则进行字符串比较。这意味着,如果在不同的文化环境中使用该方法进行字符串比较,可能会得到不同的结果。 可以使用 StringComparison 枚举类型中的成员来指定不同的比较规则,例如: - StringComparison.CurrentCulture:使用当前文化的比较规则进行字符串比较。 - StringComparison.InvariantCulture:使用固定文化(Invariant Culture)的比较规则进行字符串比较,这种比较方式不受当前操作系统文化设置的影响。 - StringComparison.Ordinal:按照字符的 Unicode 值进行比较,不考虑语言和文化差异。 例如,以下代码使用当前文化的比较规则比较两个字符串: ```csharp string str1 = "apple"; string str2 = "banana"; int result = str1.CompareTo(str2); ``` 如果当前文化为英语(美国),则 result 的值为一个负整数,表示 str1 小于 str2。 如果要使用不同的比较规则进行字符串比较,可以将 StringComparison 枚举类型作为第二个参数传递给 CompareTo() 方法,例如: ```csharp string str1 = "apple"; string str2 = "banana"; int result = str1.CompareTo(str2, StringComparison.InvariantCulture); ``` 这将使用固定文化的比较规则进行字符串比较,不受当前操作系统文化设置的影响。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿成_

你的鼓励是我创作的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值