Java8 Top Tips

物联网

  使用Streams API相比起使用循环和if语句更加清晰明了。例如:

物联网

  IDEA会建议重构为:

物联网

  我做的性能测试表示这个重构是令人惊奇的-无论性能是不变、提升还是变差,都是不能被预测的。因此,当你的应用对性能要求很苛刻的话,重构的时候务必做好测试。

  当遍历数组时使用循环

  使用Java8并不是意味着你必须到处都使用Stream和新的集合方法。IDEA会智能提示哪些地方可以转换为Stream操作,但是并不意味着你必须这么做。

  特别是当遍历一个保存基本数据类型的小数组时,使用loop循环的性能是更加好的,而且更加可阅读(至少对哪些Stream的新手来说是这样的)。

 

  以上的建议,并非是固定不变,也不是必须要遵守的。但是无论你倾向于继续使用loops做某些操作还是在能够使用的地方使用Stream API, 你都要做出你自己的决定。