一尘不染

Hibernate query.list()方法返回空列表,而不是空值

hibernate

如果没有行,都query.list()criteria.list()正在返回 一个,而不是列表null值。

这背后的原因是什么?


阅读 433

收藏
2020-06-20

共1个答案

一尘不染

原因是不与有效Java 2nd Edition,项目43 一致,在客户端代码中强制执行空检查: 返回空数组或集合,而不是null

这使客户端代码更简单,更不易出错(并且很可能也是该方法的实现)。

空返回惯用语可能是C编程语言的一种保留,在C语言中,数组长度与实际数组分开返回。在C中,如果返回零作为长度,则分配数组没有任何好处。

2020-06-20