如何在 C#.NET 中使用 Strig.compare 比较三个字符串

本文关键字:比较 字符串 三个 compare Strig NET | 更新日期: 2023-09-27 18:32:16

我想比较三个或更多字符串,如下所示

using System;
namespace StringApplication
{
   class StringProg
   {
      static void Main(string[] args)
      {
         string str1 = "This is test";
         string str2 = "This is text";
         string str3 = "This is text";
         if (String.Compare(str1, str2,str3) == 0)
         {
            Console.WriteLine(str1 + " and " + str2 +  " are equal.");
         }
         else
         {
            Console.WriteLine(str1 + " and " + str2 + " are not equal.");
         }
         Console.ReadKey() ;
      }
   }
}

但是我得到一个错误。

如何在 C#.NET 中使用 Strig.compare 比较三个字符串

正如 MSDN 中所述:

比较两个指定的 String 对象并返回一个整数 指示它们在排序顺序中的相对位置。此成员是 重载。有关此会员的完整信息,包括 语法、用法和示例,单击重载列表中的名称。

因此,您不能以这种方式比较三个字符串。如果你想比较所有三个字符串,你可以尝试以下方法,而不是这样做,我假设你想要

if (String.Compare(str1, str2) == 0 &&  
    String.Compare(str2, str3) == 0)

您需要手动执行此操作。将第一个与第二个进行比较,将第一个与第三个进行比较,将第一个与第四个进行比较,依此类推。如果当前被测货币对不相等,您可以立即得出结论,整个集合不相等。如果所有对都报告为相等,则它们都是相等的。