!Objects.equals(Choice, "Yes")||!Objects.equals(Choice,"No")为什么始终为假
时间: 2024-05-31 09:08:14 浏览: 66
这个表达式中使用了逻辑或(||)运算符,只有两个条件中至少有一个为真,整个表达式才会被计算为真。但是,这个表达式中的两个条件是互斥的,即Choice只能是"Yes"或"No",它不可能既等于"Yes"又等于"No"。因此,无论Choice的值是什么,至少有一个条件会被判定为假,整个表达式就会被判定为假。
相关问题
Objects.equals.
Objects.equals() 是 Java 中的一个静态方法,用于比较两个对象是否相等。它可以处理两个对象都为 null 的情况,而不会出现 NullPointerException 异常。该方法的实现如下:
```java
public static boolean equals(Object a, Object b) {
return (a == b) || (a != null && a.equals(b));
}
```
其中,a 和 b 分别是要比较的两个对象。首先判断它们是否是同一个对象,如果是,则直接返回 true。否则,判断 a 是否为 null,如果是,则返回 false;否则,调用 a 的 equals() 方法进行比较。
Objects.equals
Objects.equals是Java中的一个静态方法,用于比较两个对象是否相等。它的使用方法是通过传入两个对象作为参数,返回一个boolean值表示这两个对象是否相等。
例如,可以使用Objects.equals方法来比较两个字符串是否相等:
```java
String str1 = "Hello";
String str2 = "Hello";
boolean isEqual = Objects.equals(str1, str2);
System.out.println(isEqual); // 输出 true
```
该方法会使用传入的对象的equals方法进行比较,如果两个对象都为null,则认为它们相等。否则,会调用第一个对象的equals方法进行比较。
需要注意的是,如果传入的对象不是null,并且没有重写equals方法,则会默认使用Object类中的equals方法进行比较,这时比较的是两个对象是否引用同一个内存地址。
希望我能解答到您的问题!如果还有其他问题,请继续提问。
阅读全文