Обычная мудрость гласит, что нужно избегать вызовов Cursor.getCount () , потому что это дорогостоящая операция.После прочтения исходного кода AbstractCursor кажется, что все стандартные операции, включая moveToNext
, moveToFirst
и moveToPosition
все, вызывают getCount
внутренне!
Так какой смысл избегатьВы вообще это называете?
РЕДАКТИРОВАТЬ: добавлена гиперссылка на документы для Android
РЕДАКТИРОВАТЬ: Возможно, я исправлен?У меня сложилось впечатление, что Курсор может предоставить движущееся окно для больших наборов данных, полная длина которых может быть известна только после того, как окно просмотрит весь набор хотя бы один раз.Следовательно, вызов getCount
вызовет полную загрузку / итерацию, а moveToNext продвигает окно только по мере необходимости.