Collections.binarySearch()与列表indexOf()

|| 我有超过37K项的列表,并且我已经实现了
hashCode()
equals()
,所以我想知道
Collections.binarySearch()
可以帮助提高性能并且比
indexOf()
方法更快。     
已邀请:
如果对集合进行排序,则ѭ4be将是O(log n),而不是
indexOf()
\的O(n),您肯定会看到一个改进。     
为了使binarySearch()起作用,必须对列表进行排序。 equals()和hashCode()与排序无关。您的对象必须是可比较的,或者您必须具有相关的比较器。无论哪种方式,您都必须首先对列表进行排序。 是的,假设列表已排序,那么与indexOf()相比,binarySearch()可能会获得更好的性能。     
通过使用HashSet,您将获得更好的性能。不过,这将占用更多空间。     

要回复问题请先登录注册