1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-16 18:10:13 +08:00

Update Java疑难点.md

This commit is contained in:
SnailClimb 2019-07-14 22:17:24 +08:00
parent 78813345a3
commit 18e80a8fcf

View File

@ -61,7 +61,7 @@ public static boolean equals(Object a, Object b) {
Reference:[Java中equals方法造成空指针异常的原因及解决方案](https://blog.csdn.net/tick_tock97/article/details/72824894) Reference:[Java中equals方法造成空指针异常的原因及解决方案](https://blog.csdn.net/tick_tock97/article/details/72824894)
- 每种原始类型都有默认值一样如int默认值为0boolean的默认值为falsenull是任何引用类型的默认值不严格的说是所有object类型的默认值。 - 每种原始类型都有默认值一样如int默认值为 0boolean 的默认值为 falsenull 是任何引用类型的默认值,不严格的说是所有 Object 类型的默认值。
- 可以使用==或者!=操作来比较null值但是不能使用其他算法或者逻辑操作。在Java中`null==null`将返回true。 - 可以使用==或者!=操作来比较null值但是不能使用其他算法或者逻辑操作。在Java中`null==null`将返回true。
- 不能使用一个值为null的引用类型变量来调用非静态方法否则会抛出异常 - 不能使用一个值为null的引用类型变量来调用非静态方法否则会抛出异常
@ -155,9 +155,7 @@ Reference:《阿里巴巴Java开发手册》
**正例** : 数据库的查询结果可能是 null因为自动拆箱用基本数据类型接收有 NPE 风险。 **正例** : 数据库的查询结果可能是 null因为自动拆箱用基本数据类型接收有 NPE 风险。
**反例** : 比如显示成交总额涨跌情况,即正负 x%x 为基本数据类型,调用的 RPC 服务,调用不成功时, **反例** : 比如显示成交总额涨跌情况,即正负 x%x 为基本数据类型,调用的 RPC 服务,调用不成功时,返回的是默认值,页面显示为 0%,这是不合理的,应该显示成中划线。所以包装数据类型的 null 值,能够表示额外的信息,如:远程调用失败,异常退出。
返回的是默认值,页面显示为 0%,这是不合理的,应该显示成中划线。所以包装数据类型的 null 值,能
够表示额外的信息,如:远程调用失败,异常退出。
# 2. 集合 # 2. 集合