比较可以为空和空字符串(“”)的对象

马丁·索特洛

您好,我到了一个地步,我需要一个函数来比较来自不同来源的2个对象,此外它还比较字符串,而一个来源则为null,而另一个来源为空对象。

我的代码是

private static boolean areDifferent(Object o1, Object o2) {
    if ("".equals(o1)) {
        o1 = null;
    }
    if ("".equals(o2)) {
        o2 = null;
    }
    if (o1 == null || o2 == null) {
        return !(o1 == o2);
    }
    return !o1.equals(o2);
}

有没有更好的方法来写这个?

罗尔夫

您可以为其使用三元组(我会将null转换为“”):

return !(o1 == null ? "" : o1).equals(o2 == null ? "" : o2);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

比较JS对象的值为null和空字符串

来自分类Dev

比较Java中可以为null的字符串

来自分类Dev

比较字符串和对象

来自分类Dev

非空字符串的哈希码可以为零吗?

来自分类Dev

默认的SQLServer实例名称可以为空字符串吗?

来自分类Dev

字符串序列和空字符串之间的比较

来自分类Dev

哪个`[`不能比较空字符串?

来自分类Dev

Bash中的空字符串比较

来自分类Dev

无法比较空字符串

来自分类Dev

空字符串比较中的异常

来自分类Dev

哪个`[`不能比较空字符串?

来自分类Dev

Bash空字符串比较行为

来自分类Dev

比较具有不同空格和可能为空字符的字符串

来自分类Dev

是否可以为字符串比较计算布尔表达式?

来自分类常见问题

在反编译的.java类Kotlin中,私有字符串属性可以为空

来自分类Dev

空字符串和“”是否是相同的字符串?

来自分类Dev

比较C#中的字符串和对象

来自分类Dev

如何正确比较 Java 中的字符串(和对象)?

来自分类Dev

在Uri对象上,原始字符串属性是否可以为null?

来自分类Dev

在Uri对象上,原始字符串属性是否可以为null?

来自分类Dev

数据分析-如何计算空值,NaN和空字符串值?

来自分类Dev

CMake比较带有STREQUAL的空字符串失败

来自分类Dev

CMake比较带有STREQUAL的空字符串失败

来自分类Dev

在mysql中将NULL值与空字符串进行比较

来自分类Dev

字符串声明->空,空字符串,某些值-字符串声明

来自分类Dev

快速观察表明等于空字符串的对象不是空字符串

来自分类Dev

快速观察表明等于空字符串的对象不是空字符串

来自分类Dev

是否可以为短函数和方法禁用pylint缺少文档字符串错误?

来自分类Dev

为什么EF6 LINQ无法为空字符串变量比较生成正确的“是否为空” SQL?

Related 相关文章

  1. 1

    比较JS对象的值为null和空字符串

  2. 2

    比较Java中可以为null的字符串

  3. 3

    比较字符串和对象

  4. 4

    非空字符串的哈希码可以为零吗?

  5. 5

    默认的SQLServer实例名称可以为空字符串吗?

  6. 6

    字符串序列和空字符串之间的比较

  7. 7

    哪个`[`不能比较空字符串?

  8. 8

    Bash中的空字符串比较

  9. 9

    无法比较空字符串

  10. 10

    空字符串比较中的异常

  11. 11

    哪个`[`不能比较空字符串?

  12. 12

    Bash空字符串比较行为

  13. 13

    比较具有不同空格和可能为空字符的字符串

  14. 14

    是否可以为字符串比较计算布尔表达式?

  15. 15

    在反编译的.java类Kotlin中,私有字符串属性可以为空

  16. 16

    空字符串和“”是否是相同的字符串?

  17. 17

    比较C#中的字符串和对象

  18. 18

    如何正确比较 Java 中的字符串(和对象)?

  19. 19

    在Uri对象上,原始字符串属性是否可以为null?

  20. 20

    在Uri对象上,原始字符串属性是否可以为null?

  21. 21

    数据分析-如何计算空值,NaN和空字符串值?

  22. 22

    CMake比较带有STREQUAL的空字符串失败

  23. 23

    CMake比较带有STREQUAL的空字符串失败

  24. 24

    在mysql中将NULL值与空字符串进行比较

  25. 25

    字符串声明->空,空字符串,某些值-字符串声明

  26. 26

    快速观察表明等于空字符串的对象不是空字符串

  27. 27

    快速观察表明等于空字符串的对象不是空字符串

  28. 28

    是否可以为短函数和方法禁用pylint缺少文档字符串错误?

  29. 29

    为什么EF6 LINQ无法为空字符串变量比较生成正确的“是否为空” SQL?

热门标签

归档