C#中比较两个字符串用什么方法
时间: 2024-03-24 19:39:10 浏览: 105
在C#中比较两个字符串,可以使用String类的Equals方法或者==运算符。下面分别介绍一下这两种方法的用法。
1. Equals方法
String类的Equals方法用于比较两个字符串是否相等。它有多个重载方法,可以允许你指定比较的方式、大小写敏感性等。下面是一个简单的例子:
```csharp
string str1 = "hello";
string str2 = "world";
bool result1 = str1.Equals(str2); // false
bool result2 = str1.Equals("HELLO", StringComparison.OrdinalIgnoreCase); // true,忽略大小写
```
2. ==运算符
在C#中,字符串也支持==运算符。当使用==比较两个字符串时,它会调用String类的Equals方法进行比较。下面是一个例子:
```csharp
string str1 = "hello";
string str2 = "world";
bool result1 = str1 == str2; // false
bool result2 = str1 == "HELLO"; // false,区分大小写
bool result3 = str1 == "HELLO"i; // true,不区分大小写
```
需要注意的是,当使用==比较两个字符串时,如果其中一个字符串为null,那么会抛出NullReferenceException异常。因此,最好在比较之前先检查字符串是否为null,例如:
```csharp
string str1 = "hello";
string str2 = null;
bool result1 = str1 == str2; // false,会抛出异常
bool result2 = str1.Equals(str2); // false,不会抛出异常
bool result3 = str2 == null; // true
bool result4 = string.IsNullOrEmpty(str2); // true,更加简洁的写法
```
阅读全文