代码之家  ›  专栏  ›  技术社区  ›  Arseni Mourzenko

为什么“返回数组的属性容易导致代码效率低下”?

  •  9
  • Arseni Mourzenko  · 技术社区  · 15 年前

    我有一段处理存储在数据库中的客户的代码。有一个物体 Customer byte[]

    , )那就是:

    返回数组的属性容易导致代码效率低下。考虑使用集合或将其作为方法。有关详细信息,请参见设计指南。”

    我真的不明白,我在做什么代码效率低下?

    1 回复  |  直到 10 年前
        1
  •  4
  •   Jon Skeet    15 年前

    问题是数组 总是

    • 允许来电者扰乱你的内部状态

    如果您使用一个集合,您可以在真正的集合周围创建一个只读包装器,然后返回它—这样可以便宜得多。或者,如果您将它更改为一个方法,它将降低调用速度非常快的期望。

    当然,如果您对调用者改变数据感到满意,那么数组就可以正常工作了。。。