Java 方法的返回值到底用基本类型好还是包装类型好

2019-05-21 11:25:41 +08:00
 ohyeahhh

最近一直有这个疑问,百度也搜了,找不到满意的答案,所以来问问神通广大的 V 友们

5820 次点击
所在节点    Java
32 条回复
nkduqi
2019-05-21 13:10:17 +08:00
如果是对外的接口,一般不适用基本类型,都使用包装类型;
如果是应用内部自己用,则可以使用基本类型;
guyeu
2019-05-21 14:14:38 +08:00
1. 优先项目内部代码规范;
2. 如果你的方法设计上不会返回 null,请使用基本类型;
3. 如果你的方法设计上会返回 null,使用 Optional 包装,在语义上告诉使用者返回值有可能为空;
enaxm
2019-05-21 14:20:00 +08:00
对内你随意,不过我一般用包装类型,想到之前有个同事问我 int 能不能返回 null,我都不知道怎么吐槽。。。

系统内部一般有共有的工程打成 jar 包,常见的错误类型、宏定义等等,maven 里头连着 nexus,maven 中引入这个包

对外一般不返回一个当然包装
c4f36e5766583218
2019-05-21 14:40:26 +08:00
boolean,其它包装?
cuzfinal
2019-05-21 17:25:29 +08:00
用基本对象,减少装箱
alittlefun
2019-05-21 18:40:13 +08:00
参考 api 返回类型
oneisall8955
2019-05-21 19:54:16 +08:00
看需求~假如纯属自己做接口,爱咋用就咋用,写清楚返回是什么含义就行了
sagaxu
2019-05-21 21:52:58 +08:00
java 标准库都是返回基本类型,Java 标准制定者们,应该比较懂 Java 吧

如果同事都是菜鸡,还是建议装箱类型,他们需要
BlackZhu
2019-05-22 10:50:31 +08:00
请教一下 我想返回一条数据 不创建实体的话 难道装在 map 里面返回吗?
BlackZhu
2019-05-22 10:55:18 +08:00
如果返回实体的话会有很多空字段 但是给每个方法写不同的 dto 又太繁琐了 各位是如何处理的?
nekoneko
2019-05-22 11:01:11 +08:00
@BlackZhu 反 Object
lazyfighter
2019-05-30 18:51:43 +08:00
包装类,null 跟 0 有可能两个含义

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/566134

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX