我有将对象添加到数组列表的ArrayList问题的ArrayList。添加对象的ArrayList [哈希合并]
//instantiate Bucket List
ArrayList< ArrayList<Block> > rBucketlist = new ArrayList< ArrayList<Block> >(M-1);
for (int i=0; i<M-1; i++) {
rBucketlist.add(bucket);
}
之后
,当我试图将一个块添加到rBucketlist:
RelationLoader rLoader=relR.getRelationLoader();
//hash phase(R)
while(rLoader.hasNextBlock()){
mBuffer=rLoader.loadNextBlocks(1);
mBuff=mBuffer[0];
for (int tt=0; tt<mBuff.getNumTuples(); tt++){
Tuple temp = mBuff.tupleLst.get(tt);
mod = temp.key%(M-1);//19 buckets allowed
if (mainmemBuffer[mod].getNumTuples()==10){
rBucketlist.get(mod).add(mainmemBuffer[mod]);
mainmemBuffer[mod].tupleLst.clear();
mainmemBuffer[mod].insertTuple(temp);
}
else{
mainmemBuffer[mod].insertTuple(temp);
}
}
}
我就行了有麻烦rBucketlist.get(mod).add(mainmemBuffer[mod]);
而不是增加对块,我似乎添加多个块(不大小10)
这怎么可能?
你能添加什么是不工作的详细信息? – vidit 2014-11-03 03:39:54
而不是添加一个大小为10的块。它正在添加其他块(大小<10)... – wjy 2014-11-03 03:43:45