过滤Java Collection这样的常见场景,我正在寻找最好的方法。在StackOverflow中进行一些搜索之后,我只能看到特定集合过滤方法的推荐,而无需对速度进行统计比较。 Somebody recommended Predicate Some recommended lambdaj
我想看看是否有人研究过这个问题。因此,问题是:“在可读性和速度方面,过滤Java Collection的最佳方法是什么?”
我想知道网络上一些非凡方法的研究结果,它们是:(如果你有另一个(更好的)选择,请随时编辑我的问题)
我们可以假设存在一个需要0.05秒执行的WS调用。我们可以拨打它100次。
getSomething() // 0.05 seconds to execute
然后我们可以比较他们在
等场景中的表现单个结果性能(假设某些条件只返回一个结果。找到对象后,退出搜索) 1.1。最佳案例场景1.2最差案例场景1.3平均案例场景
多个结果表现(假设有一个集合返回,可能会有多个结果)
感谢您的回答!
答案 0 :(得分:1)
对于大多数用途,足以假设所有不同的方式具有大致相同的性能(O(n)),因此这不是经常研究的东西。
如果您想找到“最佳”的方法,您应该对一些不同对象的大型集合进行自己的性能测试。如果您发现性能有任何显着差异,可以在此处发布。