在Android设备上执行SQLite cursor.getCount()是否是昂贵的操作?
哪个更快:
Cursor cursor = db.rawQuery(sql, null);
int length = cursor.getCount();
final List<Item> items = new ArrayList<Item>(length * 2); // need maybe 2 items per row
if (cursor.moveToFirst()) {
      // loop trough the query result
      do {
...
要么
Cursor cursor = db.rawQuery(sql, null);
final List<Item> items = new ArrayList<Item>();  // capacity is 0 by default on android
if (cursor.moveToFirst()) {
      // loop trough the query result
      do {
我从这里开始使用Android中的SQLite示例:http://www.cnblogs.com/pangblog/p/3327696.html
我唠叨着通过名字联系.如何更改GetContact函数以按名称搜索?
数据库处理器:
public class DatabaseHandler extends SQLiteOpenHelper {
    //Database Version 
    private static final int DATABASE_VERSION = 1;
    //Database Name
    private static final String DATABASE_NAME = "contactsManager";
    //Contacts table name 
    private static final String TABLE_CONTACTS = "contacts";
    //Contacts Table Columns names 
    private static final String KEY_ID = "id";
    private static final String KEY_NAME = "name";
    private static final String KEY_PH_NUM = "phone_number";
    public DatabaseHandler(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
    // Creating Tables : CREATE TABLE …