2024年3月11日发(作者:)
C#中字符串的比较操作
字符串比较是比较常用的操作,一般出于以下两个原因比较字符串:
• 判断相等
• 字符串排序
查询API判断字符串相等或排序时,由以下方法:
public override bool Equals(object obj);
public bool Equals(string value);
public static bool Equals(string a, string b);
public bool Equals(string value, StringComparison comparisonType);
public static bool Equals(string a, string b, StringComparison comparisonType);
public static int Compare(string strA, string strB);
public static int Compare(string strA, string strB, bool ignoreCase);
public static int Compare(string strA, string strB, StringComparison comparisonType);
public static int Compare(string strA, string strB, bool ignoreCase, CultureInfo culture);
public static int Compare(string strA, string strB, CultureInfo culture, CompareOptions options);
public static int Compare(string strA, int indexA, string strB, int indexB, int length);
public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool
ignoreCase);
public static int Compare(string strA, int indexA, string strB, int indexB, int length,
StringComparison comparisonType);
public static int Compare(string strA, int indexA, string strB, int indexB, int length, bool
ignoreCase, CultureInfo culture);
public static int Compare(string strA, int indexA, string strB, int indexB, int length, CultureInfo
culture, CompareOptions options);
public static int CompareOrdinal(string strA, string strB);
public static int CompareOrdinal(string strA, int indexA, string strB, int indexB, int length);
public int CompareTo(object value);
public int CompareTo(string strB);
发现上述的方法中大多都有StringComparison类型的枚举,查询msdn后得到:
现简单写一段代码,测试Compare(string strA, string strB, StringComparison comparisonType)方法。
分别用到tCulture 和l。代码如下:
static void Main(string[] args)
{
string strA = "asdfadsfasdfew我ò啊?地?方?的?asd";
string strB = "adsfeaqfaead啊?多à发¢安2德?森-efadsfa";
Stopwatch sw = new Stopwatch();
();
for (int i = 0; i < 1000000; i++)
{


发布评论