本文整理汇总了Java中org.roaringbitmap.IntIterator类的典型用法代码示例。如果您正苦于以下问题:Java IntIterator类的具体用法?Java IntIterator怎么用?Java IntIterator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
IntIterator类属于org.roaringbitmap包,在下文中一共展示了IntIterator类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getSortedBitmapIntIteratorsForStringColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForStringColumn(final String columnToSortOn) {
final RealtimeInvertedIndex index = invertedIndexMap.get(columnToSortOn);
final MutableDictionaryReader dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
final List<String> rawValues = new ArrayList<String>();
for (int i = 0; i < dictionary.length(); i++) {
rawValues.add((String) dictionary.get(i));
}
long start = System.currentTimeMillis();
Collections.sort(rawValues);
LOGGER.info("dictionary len : {}, time to sort : {} ", dictionary.length(), (System.currentTimeMillis() - start));
for (int i = 0; i < rawValues.size(); i++) {
intIterators[i] = index.getDocIdSetFor(dictionary.indexOf(rawValues.get(i))).getIntIterator();
}
return intIterators;
}
示例2: getSortedBitmapIntIteratorsForIntegerColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForIntegerColumn(final String columnToSortOn) {
final RealtimeInvertedIndex index = invertedIndexMap.get(columnToSortOn);
final MutableDictionaryReader dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
int[] rawValuesArr = new int[dictionary.length()];
for (int i = 0; i < dictionary.length(); i++) {
rawValuesArr[i] = (Integer) dictionary.get(i);
}
Arrays.sort(rawValuesArr);
long start = System.currentTimeMillis();
LOGGER.info("dictionary len : {}, time to sort : {} ", dictionary.length(), (System.currentTimeMillis() - start));
for (int i = 0; i < rawValuesArr.length; i++) {
intIterators[i] = index.getDocIdSetFor(dictionary.indexOf(rawValuesArr[i])).getIntIterator();
}
return intIterators;
}
示例3: getSortedBitmapIntIteratorsForLongColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForLongColumn(final String columnToSortOn) {
final RealtimeInvertedIndex index = invertedIndexMap.get(columnToSortOn);
final MutableDictionaryReader dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
final List<Long> rawValues = new ArrayList<Long>();
for (int i = 0; i < dictionary.length(); i++) {
rawValues.add((Long) dictionary.get(i));
}
long start = System.currentTimeMillis();
Collections.sort(rawValues);
LOGGER.info("dictionary len : {}, time to sort : {} ", dictionary.length(), (System.currentTimeMillis() - start));
for (int i = 0; i < rawValues.size(); i++) {
intIterators[i] = index.getDocIdSetFor(dictionary.indexOf(rawValues.get(i))).getIntIterator();
}
return intIterators;
}
示例4: getSortedBitmapIntIteratorsForFloatColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForFloatColumn(final String columnToSortOn) {
final RealtimeInvertedIndex index = invertedIndexMap.get(columnToSortOn);
final MutableDictionaryReader dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
final List<Float> rawValues = new ArrayList<Float>();
for (int i = 0; i < dictionary.length(); i++) {
rawValues.add((Float) dictionary.get(i));
}
long start = System.currentTimeMillis();
Collections.sort(rawValues);
LOGGER.info("dictionary len : {}, time to sort : {} ", dictionary.length(), (System.currentTimeMillis() - start));
for (int i = 0; i < rawValues.size(); i++) {
intIterators[i] = index.getDocIdSetFor(dictionary.indexOf(rawValues.get(i))).getIntIterator();
}
return intIterators;
}
示例5: getSortedBitmapIntIteratorsForDoubleColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForDoubleColumn(final String columnToSortOn) {
final RealtimeInvertedIndex index = invertedIndexMap.get(columnToSortOn);
final MutableDictionaryReader dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
final List<Double> rawValues = new ArrayList<Double>();
for (int i = 0; i < dictionary.length(); i++) {
rawValues.add((Double) dictionary.get(i));
}
long start = System.currentTimeMillis();
Collections.sort(rawValues);
LOGGER.info("dictionary len : {}, time to sort : {} ", dictionary.length(), (System.currentTimeMillis() - start));
for (int i = 0; i < rawValues.size(); i++) {
intIterators[i] = index.getDocIdSetFor(dictionary.indexOf(rawValues.get(i))).getIntIterator();
}
return intIterators;
}
示例6: descendingIntIterator
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
@Override
public MiruIntIterator descendingIntIterator(ImmutableRoaringBitmap bitmap) {
final IntIterator intIterator = bitmap.getReverseIntIterator();
return new MiruIntIterator() {
@Override
public boolean hasNext() {
return intIterator.hasNext();
}
@Override
public int next() {
return intIterator.next();
}
};
}
示例7: descendingIntIterator
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
@Override
public MiruIntIterator descendingIntIterator(RoaringBitmap bitmap) {
final IntIterator intIterator = bitmap.getReverseIntIterator();
return new MiruIntIterator() {
@Override
public boolean hasNext() {
return intIterator.hasNext();
}
@Override
public int next() {
return intIterator.next();
}
};
}
示例8: storeAndGetAuthz
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
@Test(dataProvider = "miruAuthzIndexDataProviderWithData")
public void storeAndGetAuthz(MiruAuthzIndex<RoaringBitmap, RoaringBitmap> miruAuthzIndex,
MiruAuthzUtils miruAuthzUtils,
Map<String, List<Integer>> bitsIn) throws Exception {
StackBuffer stackBuffer = new StackBuffer();
for (Map.Entry<String, List<Integer>> entry : bitsIn.entrySet()) {
String authz = entry.getKey();
MiruAuthzExpression miruAuthzExpression = new MiruAuthzExpression(ImmutableList.of(authz));
RoaringBitmap bitsOut = miruAuthzIndex.getCompositeAuthz(miruAuthzExpression, stackBuffer);
List<Integer> actual = Lists.newArrayList();
IntIterator iter = bitsOut.getIntIterator();
while (iter.hasNext()) {
actual.add(iter.next());
}
assertEquals(actual, entry.getValue());
}
}
示例9: multiTxIndex
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
@Override
public void multiTxIndex(String name,
int fieldId,
MiruTermId[] termIds,
int considerIfLastIdGreaterThanN,
StackBuffer stackBuffer,
MultiIndexTx<RoaringBitmap> indexTx) throws Exception {
NavigableMap<MiruTermId, RoaringBitmap> terms = indexes[fieldId];
for (int i = 0; i < termIds.length; i++) {
MiruTermId termId = termIds[i];
if (termId != null) {
RoaringBitmap bitmap = terms.get(termId);
if (bitmap != null) {
IntIterator reverse = bitmap.getReverseIntIterator();
int lastId = reverse.hasNext() ? reverse.next() : -1;
indexTx.tx(i, lastId, bitmap, null, -1, stackBuffer);
}
}
}
}
示例10: applyAnd
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
@Override
public MutableRoaringBitmap applyAnd(MutableRoaringBitmap answer) {
MutableRoaringBitmap result = new MutableRoaringBitmap();
if (evaluator.isAlwaysFalse()) {
return result;
}
IntIterator intIterator = answer.getIntIterator();
int docId = -1, length;
while (intIterator.hasNext() && docId < endDocId) {
docId = intIterator.next();
if (docId >= startDocId) {
valueIterator.skipTo(docId);
_numEntriesScanned++;
length = valueIterator.nextIntVal(intArray);
if (evaluator.applyMV(intArray, length)) {
result.add(docId);
}
}
}
return result;
}
示例11: applyAnd
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
@Override
public MutableRoaringBitmap applyAnd(MutableRoaringBitmap answer) {
MutableRoaringBitmap result = new MutableRoaringBitmap();
if (_evaluator.isAlwaysFalse()) {
return result;
}
IntIterator intIterator = answer.getIntIterator();
int docId = -1;
while (intIterator.hasNext() && docId < _endDocId) {
docId = intIterator.next();
if (docId >= _startDocId) {
_valueIterator.skipTo(docId);
_numEntriesScanned++;
if (_valueMatcher.doesCurrentEntryMatch(_valueIterator)) {
result.add(docId);
}
}
}
return result;
}
示例12: getSortedBitmapIntIteratorsForStringColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForStringColumn(final String columnToSortOn) {
final RealtimeInvertedIndexReader index = invertedIndexMap.get(columnToSortOn);
final MutableDictionary dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
final List<String> rawValues = new ArrayList<String>();
for (int i = 0; i < dictionary.length(); i++) {
rawValues.add((String) dictionary.get(i));
}
long start = System.currentTimeMillis();
Collections.sort(rawValues);
LOGGER.info("Column {}, dictionary len : {}, time to sort : {} ", columnToSortOn, dictionary.length(),
(System.currentTimeMillis() - start));
for (int i = 0; i < rawValues.size(); i++) {
intIterators[i] = index.getDocIds(dictionary.indexOf(rawValues.get(i))).getIntIterator();
}
return intIterators;
}
示例13: getSortedBitmapIntIteratorsForIntegerColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForIntegerColumn(final String columnToSortOn) {
final RealtimeInvertedIndexReader index = invertedIndexMap.get(columnToSortOn);
final MutableDictionary dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
int[] rawValuesArr = new int[dictionary.length()];
for (int i = 0; i < dictionary.length(); i++) {
rawValuesArr[i] = (Integer) dictionary.get(i);
}
Arrays.sort(rawValuesArr);
long start = System.currentTimeMillis();
LOGGER.info("Column {}, dictionary len : {}, time to sort : {} ", columnToSortOn, dictionary.length(),
(System.currentTimeMillis() - start));
for (int i = 0; i < rawValuesArr.length; i++) {
intIterators[i] = index.getDocIds(dictionary.indexOf(rawValuesArr[i])).getIntIterator();
}
return intIterators;
}
示例14: getSortedBitmapIntIteratorsForLongColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForLongColumn(final String columnToSortOn) {
final RealtimeInvertedIndexReader index = invertedIndexMap.get(columnToSortOn);
final MutableDictionary dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
final List<Long> rawValues = new ArrayList<Long>();
for (int i = 0; i < dictionary.length(); i++) {
rawValues.add((Long) dictionary.get(i));
}
long start = System.currentTimeMillis();
Collections.sort(rawValues);
LOGGER.info("Column {}, dictionary len : {}, time to sort : {} ", columnToSortOn, dictionary.length(),
(System.currentTimeMillis() - start));
for (int i = 0; i < rawValues.size(); i++) {
intIterators[i] = index.getDocIds(dictionary.indexOf(rawValues.get(i))).getIntIterator();
}
return intIterators;
}
示例15: getSortedBitmapIntIteratorsForFloatColumn
import org.roaringbitmap.IntIterator; //导入依赖的package包/类
private IntIterator[] getSortedBitmapIntIteratorsForFloatColumn(final String columnToSortOn) {
final RealtimeInvertedIndexReader index = invertedIndexMap.get(columnToSortOn);
final MutableDictionary dictionary = dictionaryMap.get(columnToSortOn);
final IntIterator[] intIterators = new IntIterator[dictionary.length()];
final List<Float> rawValues = new ArrayList<Float>();
for (int i = 0; i < dictionary.length(); i++) {
rawValues.add((Float) dictionary.get(i));
}
long start = System.currentTimeMillis();
Collections.sort(rawValues);
LOGGER.info("Column {}, dictionary len : {}, time to sort : {} ", columnToSortOn, dictionary.length(),
(System.currentTimeMillis() - start));
for (int i = 0; i < rawValues.size(); i++) {
intIterators[i] = index.getDocIds(dictionary.indexOf(rawValues.get(i))).getIntIterator();
}
return intIterators;
}