比较两个字符串或两个null值相等Java
时间: 2024-03-20 10:43:43 浏览: 33
在Java中,可以使用Objects类的equals方法比较两个字符串或两个null值是否相等。例如:
```
String str1 = null;
String str2 = null;
if (Objects.equals(str1, str2)) {
System.out.println("str1 and str2 are equal");
} else {
System.out.println("str1 and str2 are not equal");
}
```
如果str1和str2都是null,或者它们所代表的字符串相等,那么输出结果会是"str1 and str2 are equal",否则输出结果会是"str1 and str2 are not equal"。
相关问题
如何比较两个字符串是否相等
在 Java 中,比较两个字符串是否相等,可以使用 `equals()` 或 `equalsIgnoreCase()` 方法。这两个方法都是用来比较两个字符串是否相等的。
`equals()` 方法比较两个字符串的内容是否相等,严格区分大小写,如果相等则返回 `true`,否则返回 `false`。示例代码如下:
```java
String str1 = "hello";
String str2 = "HELLO";
boolean isEqual = str1.equals(str2); // false
```
`equalsIgnoreCase()` 方法比较两个字符串的内容是否相等,不区分大小写,如果相等则返回 `true`,否则返回 `false`。示例代码如下:
```java
String str1 = "hello";
String str2 = "HELLO";
boolean isEqual = str1.equalsIgnoreCase(str2); // true
```
需要注意的是,如果在比较字符串时,其中一个字符串为 `null`,则会抛出 `NullPointerException` 异常。因此,在比较字符串时,最好先判断字符串是否为 `null`。例如:
```java
String str1 = "hello";
String str2 = null;
if (str1 != null && str1.equals(str2)) {
// do something
}
```
比较两个字符串是否相等的方法
1. 使用 "==" 操作符。这种方法可以直接比较两个字符串是否完全相同,注意区分大小写。
2. 使用 equals() 方法。这种方法可以比较两个字符串是否完全相同,但与 "==" 不同的是,它不区分大小写。
3. 使用 compareTo() 方法。这种方法可以比较两个字符串大小的先后顺序,但不直接比较字符串是否相同,因此需要结合 equals() 方法使用。
4. 使用 equalsIgnoreCase() 方法。这种方法与 equals() 方法类似,但它不区分大小写。
5. 使用 Objects.equals() 方法。这种方法是 Java 7 中新增的,可以比较两个字符串是否相同,如果其中一个为 null,则返回 false。