C#中==和.Equals方法之间的区别
相等运算符(==)是比较运算符Equals(),C#中的方法用于比较字符串的内容。
该Equals()方法仅比较内容。
示例
using System;
namespace ComparisionExample {
class Program {
static void Main(string[] args) {
string str = "hello";
string str2 = str;
Console.WriteLine("Using Equality operator: {0}", str == str2);
Console.WriteLine("Using equals() method: {0}", str.Equals(str2));
Console.ReadKey();
}
}
}输出结果
Using Equality operator: True Using equals() method: True
相等运算符用于比较参考身份。
让我们来看另一个例子。
示例
using System;
namespace Demo {
class Program {
static void Main(string[] args) {
object str = "hello";
char[] values = {'h','e','l','l','o'};
object str2 = new string(values);
Console.WriteLine("Using Equality operator: {0}", str == str2);
Console.WriteLine("Using equals() method: {0}", str.Equals(str2));
Console.ReadKey();
}
}
}输出结果
Using Equality operator: False Using equals() method: True