Jåc*_*cob 3 java collections list
我将List声明为
private List<Employees> employees;
Run Code Online (Sandbox Code Playgroud)
并在我使用DAO从数据库获取值
employees= new ArrayList<Employees>();
employees.addAll(myDAO.getEmployees());
Run Code Online (Sandbox Code Playgroud)
我想搜索一个值,查找值employees List的最佳方法是什么employees List?
我试过了
Collections.sort(employees);
int index = Collections.binarySearch(employees, "abc");
Run Code Online (Sandbox Code Playgroud)
但是我得到了施法异常
任何帮助都非常感谢.
谢谢
Collections.sort(employees); // BigO - nlog(n)
int index = Collections.binarySearch(employees, new Employee("abc",...)); // BigO - log(n)
Run Code Online (Sandbox Code Playgroud)
如果你解决您的每一次列表和搜索它,代码的复杂性将是nlog(n) + log(n)其中nlog(n)的分类列表和log(n)二进制搜索.
如果您线性搜索列表会更好.班轮搜索将采取BigO - n比以前的方法更好的表现.
你得到cast Exception的Collections#sort方法,因为你的列表中包含null value其无法施展员工和提高ClassCastException
| 归档时间: |
|
| 查看次数: |
111 次 |
| 最近记录: |