当前位置: 首页 > 面试题库 >

将Java中的两个对象与可能的null值进行比较

荣俊
2023-03-14
问题内容

我想比较两个字符串在Java中的相等性(如果一个或两个都可以)null,因此我不能简单地调用.equals()。什么是最好的方法?

boolean compare(String str1, String str2) {
    ...
}

编辑:

return ((str1 == str2) || (str1 != null && str1.equals(str2)));

问题答案:

这是Java内部代码(在其他compare方法上)使用的:

public static boolean compare(String str1, String str2) {
    return (str1 == null ? str2 == null : str1.equals(str2));
}


 类似资料:
  • 我有一个类赋值,我需要将一个目标排序到一个二叉树节点中,给定一个根,我需要将它与根进行比较,如果目标小于根的值,则将目标作为左子,或者如果目标大于根的值,则将目标作为右子。 我必须使用给定的方法头和参数,我的代码是这样编写的: 返回以下错误: java:109:错误:二进制运算符“<”的操作数类型不正确 我还尝试了compareTo方法,通过尝试类似于 返回以下错误: binarySearchTr

  • 问题内容: 我有两个列表 , 都包含 MyData 类型的对象,而 MyData* 包含这些变量。 利斯塔和数组listB都包含MyData的对象,现在我要两个列表的对象值比较这里 的名字 ,以及 检查 变量一样,如果 利斯塔 包含这些对象值 和ListB也包含 然后我必须比较列表并返回false,因为两个列表相同但是如果ListA包含 和 ListB 包含 然后我必须比较列表并返回true,因为

  • 问题内容: 当我测试此代码时: 我期待一个真实,真实,真实,错误。因为这: 在java.sql.Timestamp的javadoc中,它指出: 注意:此类型是java.util.Date和单独的纳秒值的组合。仅整数秒存储在java.util.Date组件中。小数秒-纳米- 是分开的。传递值java.util.Date类型的值时,Timestamp.equals(Object)方法从不返回true,

  • 我创建了一个,当调用变量为ISE时,它会读取相关数据的表。但是,如果我尝试将与另一个对象进行比较,无法正确读取。我想告诉脚本,如果现有CSV中的任何行与匹配,则不会将数据导出到CSV,换句话说,跳过CSV文件中的重复行。CSV可能有也可能没有多行。

  • 我是javascript/jQuery的新手,由于我对javascript和jQuery有非常基本的了解,我可能不知道有许多函数可以帮助我解决我的问题。而我正在做的项目只是为了练习。 所以,我有一个字符串,我想和某些值进行比较,三个不同的值是可能的,它们是相互穷尽的。 那么,如何创建一个具有三个不同可能值的regex变量,然后将其与变量classname中的值进行比较。 没有任何方法可以像这样进行