Ternary Operator and unexpected NullPointerException

后端 未结 2 510
慢半拍i
慢半拍i 2021-01-18 13:42

I am getting NullPointerException from the below line sometimes.

System.out.println(\"Date::\"+ row != null ? row.getLegMaturityDate() : \"null         


        
相关标签:
2条回答
  • 2021-01-18 14:25

    "Date::" + row is never null, although row sometimes is.

    That is, "Date::"+ row != null is equivalent to ("Date::"+ row) != null which is always true.

    0 讨论(0)
  • 2021-01-18 14:27

    It's a matter of operator precedence. Christoffer Hammarström has the executive summary. See this page http://bmanolov.free.fr/javaoperators.php for more detail.

    0 讨论(0)
提交回复
热议问题