标签:blog java 使用 strong 数据 2014 问题 代码
改掉你从C语言继承过来的习惯,我们在java中没理由返回类型为数组或者集合返回null。
private final List<Cheese> InStock =...; public Cheese[] getCheeses() { if( InStock.size() ==0){ return null; } }
这种是我们经常使用的 返回的模式,这就带来在应用Cheese数组的时候 都需要判断数组是否为null。
Cheese[] cheeses= shop.getCheeses(); if(cheeses! =null){ .... }
如果我们修改下,把数组为空或集合没有数据时候,返回一个0长度,这样就不会要在使用的时候判断
数组和集合是否为空了。
有人认为;null返回值比0长度数组更好,因为它避免了分配数组需要的开销。
这个观点是站不住脚的,原因有两点。第一,在这个级别上的担心性能问题是不可取的,因为这个级别的性能消耗
是微不足道的; 第二,对于不返回任何元素对象有可能被自由的共享。
总之,返回类型为数组或者集合的方法 没理由返回null,我们使用返回0长度的数组或集合。
【代码优化】返回0长度数组或者集合,布布扣,bubuko.com
标签:blog java 使用 strong 数据 2014 问题 代码
原文地址:http://blog.csdn.net/honjane/article/details/38350049