我有这个示例(只是构建MultiPhraseQuery的片段):
// *** MultiPhraseQuery ***
MultiPhraseQuery mQuery = new MultiPhraseQuery();
// *** TermL1 ***
mQuery.add(new Term[] {
new Term("abstract", "quick"),
new Term("abstract", "fast")
});
// *** TermL2 ***
Term t1 = new Term("abstract", "fox");
Term t2 = new Term("abstract", "rabbit");
Term[] termL2 = new Term[] {
t1, t2
};
mQuery.add(termL2);
我想用迭代方法(如循环)构建TermL2,以允许添加动态数量的项(t1,t2,t ...,tn)。它似乎不是一个很难的问题,但我现在还没有找到解决方案。
答案 0 :(得分:1)
int n;
//Set this variable to the # of terms
String nextTerm;
Term[] termL2 = new Term[n];
for (int i = 0; i < n; i++) {
nextTerm = blahblah; //here you set your next term
termL2[i] = new Term("abstract", nextTerm);
}
mQuery.add(termL2);