c# 字符串比较相等
时间: 2024-09-24 13:24:42 浏览: 28
在 C# 中,比较两个字符串是否相等通常有几种方式:
1. 使用 `==` 运算符:
```csharp
string str1 = "hello";
string str2 = "hello";
if (str1 == str2) {
Console.WriteLine("The strings are equal.");
}
```
2. 使用 `.Equals()` 方法:
```csharp
if (str1.Equals(str2)) {
//...
}
// 注意:默认情况下,这个方法区分大小写,如果需要忽略大小写,可以传入第二个参数true给ToLower()或ToUpper()
```
3. 使用 `string.Equals(string, StringComparison)` 方法,提供更精确的比较选项,如忽略大小写、区域设置等:
```csharp
if (str1.Equals(str2, StringComparison.OrdinalIgnoreCase)) {
//...
}
```
4. 对于性能敏感的情况,可以使用 `string.ReferenceEquals()` 函数检查两个字符串是否引用了相同的内存地址(即两个字符串实际上是指向同一块内存),而不是内容是否一样:
```csharp
if (string.ReferenceEquals(str1, str2)) {
//...
}
```