-3
我正在使用java 1.6。我有一個Employee
模型如下圖所示:Java 1.6:根據模型值對模型列表進行排序
private String id;
private String firstName;
private String lastName;
private String phoneNumber;
//getters and setters
的List<Employee>
包含了所有的員工數據從數據庫中獲取。
我需要搜索List<Employee>
中存在的一個或多個員工(類似於員工搜索功能,搜索必須在List<Employee>
上完成,而不是按照搜索條件再次搜索數據庫)。截至目前,我不希望搜索List<Employee>
的員工。但如果它變得複雜,那麼我必須去分貝命中。
現在無論我想到的是一個緩慢的邏輯,如:通過List<Employee>
迭代和每個Employee
繼續搜索的搜索標準值,如果匹配然後將其添加到一個新的List<Employee>
(這會給我搜索結果)。
我想知道是否有一些達到相同的最佳方式。請讓我知道這件事。
您可以嘗試執行二進制搜索。爲了排序列表,您可以讓您的員工類實現Comparable界面。 – prashant 2013-04-23 18:22:37
這與servlet和web服務有什麼關係?此外,標題提到了「排序」,這個問題提到了過濾。 – leonbloy 2013-04-23 18:22:47
您可以創建自己的索引。每個索引都是一個'Map',鍵是你想要搜索的值,值是'Employee'對象。這取決於您希望在每次搜索的時間,使用的內存空間和時間之間進行權衡。考慮有多少員工也是如此。 – 2013-04-23 18:25:53