当前位置: 首页>>代码示例>>Java>>正文


Java BytesRef.compareTo方法代码示例

本文整理汇总了Java中org.apache.lucene.util.BytesRef.compareTo方法的典型用法代码示例。如果您正苦于以下问题:Java BytesRef.compareTo方法的具体用法?Java BytesRef.compareTo怎么用?Java BytesRef.compareTo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.lucene.util.BytesRef的用法示例。


在下文中一共展示了BytesRef.compareTo方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: compare

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
@Override
public int compare(int slot1, int slot2) {
  if (readerGen[slot1] == readerGen[slot2]) {
    return ords[slot1] - ords[slot2];
  }

  final BytesRef val1 = values[slot1];
  final BytesRef val2 = values[slot2];
  if (val1 == null) {
    if (val2 == null) {
      return 0;
    }
    return missingSortCmp;
  } else if (val2 == null) {
    return -missingSortCmp;
  }
  return val1.compareTo(val2);
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:19,代码来源:FieldComparator.java

示例2: lookupTerm

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
/** If {@code key} exists, returns its ordinal, else
 *  returns {@code -insertionPoint-1}, like {@code
 *  Arrays.binarySearch}.
 *
 *  @param key Key to look up
 **/
public long lookupTerm(BytesRef key) {
  long low = 0;
  long high = getValueCount()-1;

  while (low <= high) {
    long mid = (low + high) >>> 1;
    final BytesRef term = lookupOrd(mid);
    int cmp = term.compareTo(key);

    if (cmp < 0) {
      low = mid + 1;
    } else if (cmp > 0) {
      high = mid - 1;
    } else {
      return mid; // key found
    }
  }

  return -(low + 1);  // key not found.
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:27,代码来源:SortedSetDocValues.java

示例3: lookupTerm

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
/** If {@code key} exists, returns its ordinal, else
 *  returns {@code -insertionPoint-1}, like {@code
 *  Arrays.binarySearch}.
 *
 *  @param key Key to look up
 **/
public int lookupTerm(BytesRef key) {
  int low = 0;
  int high = getValueCount()-1;

  while (low <= high) {
    int mid = (low + high) >>> 1;
    final BytesRef term = lookupOrd(mid);
    int cmp = term.compareTo(key);

    if (cmp < 0) {
      low = mid + 1;
    } else if (cmp > 0) {
      high = mid - 1;
    } else {
      return mid; // key found
    }
  }

  return -(low + 1);  // key not found.
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:27,代码来源:SortedDocValues.java

示例4: verify

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
private void verify(SortedBinaryDocValues values, int maxDoc) {
    for (BytesRef missingValue : new BytesRef[] { new BytesRef(), new BytesRef(RandomStrings.randomAsciiOfLength(random(), 8)) }) {
        for (MultiValueMode mode : new MultiValueMode[] {MultiValueMode.MIN, MultiValueMode.MAX}) {
            final BinaryDocValues selected = mode.select(values, missingValue);
            for (int i = 0; i < maxDoc; ++i) {
                final BytesRef actual = selected.get(i);
                BytesRef expected = null;
                values.setDocument(i);
                int numValues = values.count();
                if (numValues == 0) {
                    expected = missingValue;
                } else {
                    for (int j = 0; j < numValues; ++j) {
                        if (expected == null) {
                            expected = BytesRef.deepCopyOf(values.valueAt(j));
                        } else {
                            if (mode == MultiValueMode.MIN) {
                                expected = expected.compareTo(values.valueAt(j)) <= 0 ? expected : BytesRef.deepCopyOf(values.valueAt(j));
                            } else if (mode == MultiValueMode.MAX) {
                                expected = expected.compareTo(values.valueAt(j)) > 0 ? expected : BytesRef.deepCopyOf(values.valueAt(j));
                            }
                        }
                    }
                    if (expected == null) {
                        expected = missingValue;
                    }
                }

                assertEquals(mode.toString() + " docId=" + i, expected, actual);
            }
        }
    }
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:34,代码来源:MultiValueModeTests.java

示例5: compareValues

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
@Override
public int compareValues(BytesRef val1, BytesRef val2) {
  if (val1 == null) {
    if (val2 == null) {
      return 0;
    }
    return missingSortCmp;
  } else if (val2 == null) {
    return -missingSortCmp;
  }
  return val1.compareTo(val2);
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:13,代码来源:FieldComparator.java

示例6: getMin

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
@Override
public BytesRef getMin() throws IOException {
  BytesRef minTerm = null;
  for(Terms terms : subs) {
    BytesRef term = terms.getMin();
    if (minTerm == null || term.compareTo(minTerm) < 0) {
      minTerm = term;
    }
  }

  return minTerm;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:13,代码来源:MultiTerms.java

示例7: getMax

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
@Override
public BytesRef getMax() throws IOException {
  BytesRef maxTerm = null;
  for(Terms terms : subs) {
    BytesRef term = terms.getMax();
    if (maxTerm == null || term.compareTo(maxTerm) > 0) {
      maxTerm = term;
    }
  }

  return maxTerm;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:13,代码来源:MultiTerms.java

示例8: compare

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
private static int compare(BytesRef a, BytesRef b, int m) {
    return a == null
            ? b == null ? 0 : -m
            : b == null ? m : a.compareTo(b);
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:6,代码来源:BinaryRangeAggregator.java

示例9: compare

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
@Override
public int compare(BytesRef o1, BytesRef o2) {
    return o1.compareTo(o2);
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:5,代码来源:FieldStats.java

示例10: isInRange

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
private static boolean isInRange(BytesRef value, BytesRef from, BytesRef to) {
    if ((to == null || to.compareTo(value) > 0) && (from == null || from.compareTo(value) <= 0)) {
        return true;
    }
    return false;
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:7,代码来源:IpRangeAggregatorTests.java

示例11: compare

import org.apache.lucene.util.BytesRef; //导入方法依赖的package包/类
private static int compare(BytesRef a, BytesRef b, int m) {
    return a == null
        ? b == null ? 0 : -m
        : b == null ? m : a.compareTo(b);
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:6,代码来源:IpRangeAggregatorTests.java


注:本文中的org.apache.lucene.util.BytesRef.compareTo方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。