栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用番石榴不可变集合作为方法参数和/或返回类型

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用番石榴不可变集合作为方法参数和/或返回类型

通常,明智的做法是不要在声明的返回类型中提交特定的实现,但是我们将不可变类型视为例外。有几种理由声明返回类型为

Immutable*

  • 他们记录您返回的是快照,而不是实时视图。
  • 他们记录了调用者无法更改结果。
  • 他们记录了插入顺序被保留(在您的用例中可能重要,也可能不重要)。
  • 他们记录了该集合将不包含
    null
  • 有人可能想要
    asList()
    or
    reverse()
    方法。
  • 如果某人
    copyOf()
    希望分配给某个
    Immutable*
    字段,则可以节省他的电话。(但是请注意,如果他确实包含了
    copyOf()
    ,即使您未声明返回类型,它也会使大多数不可变的输入短路。)

基本上,我只是从https://github.com/google/guava/wiki/TenThingsaboutImmutableCollections爬来爬去,您可能想要完整检查一下。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/515353.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号