编程思想总结
public List<BlackNumberInfo> qureyAll() {
// String result = "2";
List<BlackNumberInfo> result= new ArrayList<BlackNumberInfo>();
SQLiteDatabase db = helper.getWritableDatabase();// 得到一个可写的数据库
Cursor cursor = db.query("blacknumber", new String[]{"number","mode"},null,null, null, null, null);
while (cursor.moveToNext()) {
/**
* ###.这部分代码的主要目的是将数据库当中数据遍历后放入到List<BlackNumberInfo>当中去
* 1.将数据抽象格式实例化成一个具体的对象;
* 2.将数据集当中的具体数据项number和mode分别取出后放入到上面实例化得到的这个对象当中去
* 3.每取一个数据就将其最终需要存入的对象当中去。
* 4.循环遍历所有的数据对象后,将所有的数据都存放到目标对象当中去。
*/
BlackNumberInfo info= new BlackNumberInfo();
String number = cursor.getString(0);
info.setNumber(number);
String mode = cursor.getString(1);
info.setMode(mode);
result.addAll(result);
}
db.close();
return result;
}
根据以上代码总结一点面向对象的编程思想:
- 先设定好这段代码需要达到的目标,比方说这一段代码主要是为了获取到数据库当中的元素并将其存放在List当中去。所以最终取到的数据要存放到这个list当中去。
- 要从数据库中去数据,首先就得拿个能取数据的数据库才行。所以先拿到的是数据库;
- 之后在用一个得到一个数据集,用于在每次循环当中存放取到的数据;
- 在数据集当中逐步遍历下:黑名单的数据项获取到之后,将将其存放到每次从数据库中获取数据时候存放的对象当中去,比方说这里,cursor就是数据集,只要数据集在遍历过程中向下还有可能,则循环继续。每次循环得到的数据方法BlackNumberInfo当中去,因为数据集当中包括了number和mode两个数据对象。所以每取一个就将其放入到info当中,而后每次遍历完成后再将其存放到list当中去。
- 到最后遍历全部完成之后,整个数据库当中的数据全部存放到list当中去了。