resultsetiterator.java

来自「一个用于搜索本地文件内容的小型搜索引擎」· Java 代码 · 共 49 行

JAVA
49
字号
package main;

import invertedList.FileRecord;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ResultSetIterator implements Iterator<List<FileRecord>>{
	private List<FileRecord> results;
	private Iterator<List<FileRecord>> iter;
	
	public ResultSetIterator(List<FileRecord> results,int num){
		this.results = results;
		init(num);
	}
	
	private void init(int numberOfItems){
		List<List<FileRecord>> pageList = new ArrayList<List<FileRecord>>();
		int fromIndex = 0;
		int toIndex = numberOfItems;
		while(toIndex <= results.size()){
			pageList.add(results.subList(fromIndex, toIndex));
			fromIndex = toIndex;
			toIndex = toIndex + numberOfItems;
		}
		if(fromIndex != results.size()){
			pageList.add(results.subList(fromIndex, results.size()));
		}
		iter = pageList.iterator();
	}

	public boolean hasNext() {
		// TODO Auto-generated method stub
		return iter.hasNext();
	}

	public List<FileRecord> next() {
		// TODO Auto-generated method stub
		return iter.next();
	}

	public void remove() {
		// TODO Auto-generated method stub
		
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?