当前位置: 首页 > news >正文

家具定制东莞网站建设手机排行榜zol

家具定制东莞网站建设,手机排行榜zol,成都网站建设哪里好点,泰安建设网站哪个好列表流和feed流开幕式免责声明#xff1a;这并不总是一个好主意。 我将介绍这个想法#xff0c;以及为什么它是一个好主意的一些原因#xff0c;但随后我将讨论一些不太理想的实例。 懒惰 如您所知#xff0c;我在Python中的学习几乎和在Java中一样。 我一发现Python就很喜… 列表流和feed流 开幕式免责声明这并不总是一个好主意。 我将介绍这个想法以及为什么它是一个好主意的一些原因但随后我将讨论一些不太理想的实例。 懒惰 如您所知我在Python中的学习几乎和在Java中一样。 我一发现Python就很喜欢生成器。 它们允许对集合执行延迟操作因此您可以传递迭代器/生成器直到最终真正需要这些操作的最终结果–而不影响原始集合在大多数情况下但您不太可能意外影响它。 我真的很喜欢这个主意。 懒惰使您几乎不需要做任何工作直到需要结果为止而且还可以做到这一点因此不会有无用的内存来存储中间集合。 懒于Java Java也有迭代器但没有迭代器。 但是对于集合的惰性操作它确实具有与之相当相似的功能 Stream 。 尽管不像Python中的生成器那样通用但Stream基本上可以以相同的方式使用。 绕过溪流 在很多情况下您应该返回Stream而不是返回的List 或其他集合。 这不仅为您提供了一些懒惰的好处还为您做了一些事情。 如果返回对象的接收者希望将其collect()放入您计划返回的List之外的其他东西或者他们希望以您从未想到的方式来reduce()它则可以给他们提供Stream而不必担心。 然后他们可以通过一两个Stream方法调用来获得所需的内容。 对此有什么不好 当Stream像集合一样传递时存在一个很难解决的问题它们是一次性使用的。 这意味着如果下面的一个函数想要使用Stream而不是List 那么它就不容易做到因为它需要使用List分别做两件事。 public static List normalize(List input) {int total input.stream().mapToInt(i - i).sum();return input.stream().map(i - i * 100 / total).collect(Collectors.toList()); } 为了接收Stream 您需要collect()它然后在其上运行两个操作。 public static Stream normalize(Stream input) {List inputList input.collect(Collectors.toList());int total inputList.stream().mapToInt(i - i).sum();return inputList.stream().map(i - i * 100 / total); } 这稍微违反了传递Stream的目的。 这并不可怕因为我们正在尝试使用Stream的“最终”结果。 除了不是最终结果。 这是中间结果用于计算下一个Stream输出。 它创建了浪费内存的中间集合。 围绕此问题有很多方法类似于该“文章”的解决方法但是它们要么实现起来很复杂要么容易出现用户错误。 我猜想只使用我向您展示的第二种方法是可以的因为与第一种方法相比它仍然可能有相当不错的性能提升但这使我感到烦恼。 有趣但可能有点傻的选择 如果您熟悉我的文章您可能会觉得本文与我前段时间写的有关使用decorator转换集合的文章背道而驰 。 从技术上讲这篇文章确实认为这是一个相当幼稚的想法特别是因为该想法是受Stream启发的。 但是与本文中介绍的Stream的想法相比装饰器的想法有一个主要好处您可以一次又一次地遍历装饰的集合。 它的效率可能不如Stream 特别是因为我不确定如何并行化它但是它肯定具有重用性。 我有机会再次研究这个想法看看是否可以找到一种更好的方法来实现但是我对此表示怀疑。 奥托罗 所以那是我的主意。 您可以选择接受或保留它。 我不确定这在典型项目中有用的频率但是我想我将在当前和将来的项目中尝试一下。 谢谢阅读。 如果您对此有意见请在下面评论并让我知道。 翻译自: https://www.javacodegeeks.com/2015/02/pass-streams-instead-of-lists.html列表流和feed流
http://wiki.neutronadmin.com/news/128312/

相关文章:

  • 云起时网站建设万网董事长是谁
  • 网站首页不见怎么做高端网站设计
  • 网站建设的活怎么接茶的网站制作
  • 登录不了建设银行网站屏显的企业网站应该怎么做
  • 深网站建设php二次网站开发步骤
  • 许昌做网站公司汉狮价格深度网营销型网站建设公司怎么样
  • 网站建设乙方义务酒店网站的规划与建设方案
  • 国外ps网站wordpress音乐盒
  • 重庆网站建设优斗士深圳住房和建设局网站首页
  • 企业网站设计源代码如何查看网站的外链
  • 网站不清理缓存安阳住房与城乡建设局官方网站
  • 你的网站赚钱吗百度如何建设自己的网站
  • 免费推广网站教程国家信息网
  • 微信小程序做网站响应式网站模板的优势
  • 网站备案网站建设方案杭州网络公司网站建设
  • h5 做的网站 价格网络营销专业如何
  • 企业网站建设有名 乐云seo网站运行需求
  • 塘厦网站仿做网站根目录有哪些
  • 江苏省城乡建设局网站首页优畅 wordpress
  • 学院的网站怎么做江西雄基建设网站
  • 专业的手机网站建设公司排名专门做二手手机的网站吗
  • 网站用静态域名解析做网站不给源码吗
  • 优化推广网站怎么做最好网站使用帮助
  • 移动网站建设价格便宜有比wordpress更好的吗
  • 12306网站建设超30亿海口网站建设费用
  • 用什么软件做网站模板wordpress 广告主题
  • 微信商城开发推荐华网天下seo建设
  • 如何做做网站用typecho做的网站
  • 自己制作的网站模板以后可以修改吗网站关于我们怎么做单页面模板
  • wordpress站点logo设置020网站建设和维护费用