2012年10月29日
摘要: 简介 有时候你需要实现自己的集合扩展。也许你想要在元素被添加到列表时增加特定的行为,或者你想实现一个Iterable,其底层实际上是遍历数据库查询的结果集。Guava为你,也为我们自己提供了若干工具方法,以便让类似的工作变得更简单。(毕竟,我们自己也要用这些工具扩展集合框架。) Forwarding 阅读全文
posted @ 2012-10-29 17:29 duanxz 阅读(727) 评论(0) 推荐(0)
摘要: Doug Lea 说,“Null 真糟糕。” 当Sir C. A. R. Hoare 使用了null引用后说,”使用它导致了十亿美金的错误。” 轻率地使用null可能会导致很多令人惊愕的问题。通过学习Google底层代码库,我们发现95%的集合类不接受null值作为元素。我们认为, 相比默默地接受n 阅读全文
posted @ 2012-10-29 15:23 duanxz 阅读(471) 评论(0) 推荐(0)
摘要: 前置条件:让方法调用的前置条件判断更简单。 Guava在Preconditions类中提供了若干前置条件判断的实用方法,我们强烈建议在Eclipse中静态导入这些方法。每个方法都有三个变种: 没有额外参数:抛出的异常中没有错误消息; 有一个Object对象作为额外参数:抛出的异常使用Object.t 阅读全文
posted @ 2012-10-29 10:37 duanxz 阅读(599) 评论(0) 推荐(0)
摘要: equals 当一个对象中的字段可以为null时,实现Object.equals方法会很痛苦,因为不得不分别对它们进行null检查。使用Objects.equal帮助你执行null敏感的equals判断,从而避免抛出NullPointerException。例如: 注意:JDK7引入的Objects 阅读全文
posted @ 2012-10-29 10:07 duanxz 阅读(565) 评论(0) 推荐(0)