Lucene的多值字段的顺序是否稳定?

时间:2011-02-09 22:19:45

标签: lucene lucene.net

假设我在同一字段名称下向Document添加了几个值:

doc.Add( new Field( "tag", "one" ) );
doc.Add( new Field( "tag", "two" ) );
doc.Add( new Field( "tag", "three" ) );
doc.Add( new Field( "tag", "four" ) );

如果我稍后从Document的新实例(从搜索结果)中检索这些字段,我保证数组中Field的顺序将保持不变吗?< / p>

Field[] fields = doc.GetFields( "tag" );

Debug.Assert( fields[0].StringValue() == "one" );
Debug.Assert( fields[1].StringValue() == "two" );
Debug.Assert( fields[2].StringValue() == "three" );
Debug.Assert( fields[3].StringValue() == "four" );

1 个答案:

答案 0 :(得分:2)

当前代码确实如此,但不保证任何保证,因此它可能随时更改。

我不会依赖它。