0
我尝试在刷新时将新数据合并到旧缓冲区。
更新或插入是accroding“id”attr。
有人能告诉我如何在Scala中做到这一点?
def merge(oldBuf: Buffer[java.util.Map[String, Value]], newBuf: Buffer[java.util.Map[String, Value]]) {
// loop newBuffer{
// val item = newBuf(n)
// val id = item.get("id")
// if same id found in oldBuf:
// update new [Value] to the old item in oldBuf
// else (can not found this id in oldBuf)
// add this new item to oldBuf
//}
return oldBuf
}
请添加'缓冲区'的来源。缓冲区是否真的通过Java Map来参数化?是否有使用Java的Map的理由? – Beryllium
这两个Buffer的长度是否相同,并且元素是否对齐,以便newBuffer(0)在评估是否应该更新或插入整个旧的时候只需要查看oldBuffer(0)每次迭代newBuffer都需要扫描缓冲区? – cmbaxter
oldBuf和newBuf长度不同,使用Java Map cas有java方法返回 – toughtalker