开发者社区> 问答> 正文

怎么理解“所有的局部变量使用基本数据类型。”?

如何理解《阿里巴巴Java开发手册》中的下面这条数据类型与包装数据类型的使用标准?

8. 关于基本数据类型与包装数据类型的使用标准如下: 
...
3) 【推荐】所有的局部变量使用基本数据类型。

展开
收起
正午阳光59 2018-01-25 10:37:54 4724 0
6 条回答
写回答
取消 提交回答
  • 避免无意义的拆装箱以及NPE问题

    2020-02-12 11:50:21
    赞同 展开评论 打赏
  • 只是建议,实际使用的时候还是要视情况判断。
    比如,你要把本地定义的局部变量int类型和调用别人的接口返回的数据(Integer对象)比较,这时候就不方便了,反而你本地定义Integer比较方便,直接用equals方法。

    2019-07-17 21:56:09
    赞同 展开评论 打赏
  • int是基本类型,Integer是包装的对象。
    我觉得避免拆装箱倒是其次,一般的java应用不会关注这点开销,主要是避免大小比较时的错误,就是楼上说Long==Long。

    2019-07-17 21:56:09
    赞同 展开评论 打赏
  • 一名路过的小码农,大神请多多指教

    避免装箱和拆箱的过程,这是一点,另一点是避免开辟堆进行存储

    2019-07-17 21:56:09
    赞同 1 展开评论 打赏
  • 避免装箱这么个过程,以及有些同学可能或 Long==Long 这种表达式出现带来的风险

    2019-07-17 21:56:09
    赞同 展开评论 打赏
  • 仅仅是一种习惯, 一定程度上能够节省代码操作,避免NPE, 因为基本数据类型具有默认值

    2019-07-17 21:56:09
    赞同 展开评论 打赏
滑动查看更多
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载