代码示例:
//...
CloseableIterator<Order> iterator = dao.iterator();
iterator.first(); // Object
iterator.current(); // Object
iterator.hasNext(); // false (only 1 record in table "Order")
iterator.current(); // null (?!)
iterator.first(); // null (?!!)
此外,iterator.previous()也返回null(如果超过1条记录,则为ofc)。
如何禁止ORMLite的SelectIterator在最后一条记录上调用hasNext()后忘记我的数据?...
答案 0 :(得分:1)
根据ORMLite的源代码,这是一种正常的无记录不可更改的行为。
答案 1 :(得分:0)
我自己也碰到了这个。我们在Android上使用ORMLite,并且能够使用DatabaseResults成员上可用的方法,可通过调用:
iterator.getRawResults()
在能够执行安全检查计数等操作之前,您必须将其强制转换为适当的类型(取决于它们是否在您的特定实现中可用)