我想比较三个或更多字符串,如下所示
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() ;
}
}
}
但是我收到了错误。
答案 0 :(得分:3)
正如MSDN中所述:
比较两个指定的String 对象并返回一个整数 表示它们在排序顺序中的相对位置。这个成员是 超载。有关此成员的完整信息,包括 语法,用法和示例,单击重载列表中的名称。
因此你不能用这种方式比较三个字符串。您可以尝试以下操作,而不是这样做,如果您想要比较所有三个字符串,我认为这是您想要的:
if (String.Compare(str1, str2) == 0 &&
String.Compare(str2, str3) == 0)
答案 1 :(得分:1)
您需要手动执行此操作。比较第一个和第二个,比第一个和第三个,第一个和第四个等。如果被测试的当前对不相等,你可以立即得出结论,整个集合不相等。如果所有对都报告为相等,则它们都是相等的。