gpt4 book ai didi

c# - 字符串比较 - strA.ToLower()==strB.ToLower() 或 strA.Equals(strB,StringComparisonType)?

转载 作者:可可西里 更新时间:2023-11-01 08:31:20 26 4
gpt4 key购买 nike

根据标题,您使用什么字符串比较实践,为什么?

最佳答案

您没有指定平台,但我猜是 .NET。我强烈建议您使用后一种形式——因为案例比较并不像您预期​​的那么简单。 (它也避免了创建额外的字符串,但这是另一回事。)

例如,当代码在土耳其运行时出现“mail”和“MAIL”时,您希望您的代码执行什么操作?如果您使用 ToLower 它将返回 false,同样如果您使用 CurrentCultureIgnoreCase - 但如果您使用 InvariantCultureIgnoreCase 它将返回 true。您需要考虑数据的来源以及您尝试使用它实现的目标。

参见 recommendations for using strings在 MSDN 中获取更多信息和指导。

撇开其他不谈,我想说后者更有效地表达了您的意图。您实际上对字符串的小写值不感兴趣 - 您对不区分大小写相等感兴趣...这正是第二个形式表达。

关于c# - 字符串比较 - strA.ToLower()==strB.ToLower() 或 strA.Equals(strB,StringComparisonType)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1660192/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com