lucene自定義排序的實現

2021-05-10 09:09:54 字數 460 閱讀 6376

lucene能夠很方便的實現自定義排序

具體做法就是寫乙個類實現sortcomparatorsource這個介面

在類裡返回scoredoccomparator

實現scoredoccomparator 的三個方法compare,sortvalue,sorttype就行了

public class mycomparatorsource implements sortcomparatorsource    

private static class distancescoredoclookupcomparator implements scoredoccomparator   

// 返回值   

public comparable sortvalue(scoredoc i)   

//指定sorttype  

public int sorttype()    }}

lucene 使用自定義排序方法

計算基點與索引庫中每個地理位置的距離,按距離大小排序。基點為 0,0 計算從 0,0 到地圖中各個地方的距離,然後依此排序,但地方進行了分類,包括restaurant school shop。這些類放在乙個type域中,1 通過實現sortcomparatorsource介面來完成自定義排序。對每個...

sql實現自定義排序

實際應用中sql提供的預設按某一欄位排序,asc desc並不滿足需要,需要根據使用者需求自定義的按照默寫順序排序,這裡提供乙個方法,適用於自定義型別不多的情況下,多了就得存欄位關聯表排序了吧。例子如下 select from select 3 as id,小明 as name from dual ...

ArrayList實現自定義排序

arraylist中存在sort排序方法,只要你實現了comparator的介面,按照你自己的排序業務進行實現,你只要告訴這個介面按照什麼型別進行排序就ok了。這種方式類似於設計模式中的策略模式,把流程劃分好,具體的業務邏輯由使用者指定 實現 public class comparatortest ...