第四講 資料儲存
選擇題:
1.sharedPreferences讀取資料時,其中有一個方法是getString(key, defValue),該方法中的defValue引數是什麼( C)。
A、 key所對應的value值
B、 無做用
C、 是當用getString得到資料時如果沒有得到key值所對應的value值,就給定一個預設的值。
D、 key值
分析:在sharedPreferences裡
讀取資料用get資料型別(key值,該型別資料的預設值);
例如:String型預設“”
int型預設0
2.在下列選項中,Android中的五大儲存資料方式不包括(D)
A、 檔案
B、 SQLite資料庫
C、 SharedPreferences
D、 Map
E、 網路
F.ContentProvider
分析:在android裡五大儲存資料方式:
檔案,sqlite,sharedpreferences,網路,contentprovider
3.
在QQ登入案例中,顯示上次使用者輸入的賬號密碼的程式碼,需要寫在(B)方法中。
A、 onStart()
B、 onCreate()
C、 onDestroy()
D、 onStop()
4.
在Environment類中,用來獲得SD根目錄方法的是(B )
A、 getDataDirectory()
B、 getExternalStorageDirectory()
C、 getExternalStorageState()
D、 getDownloadCacheDirectory()
分析:
當android版本號>29用getExternalFilesDir()來得到外部儲存路徑
否則用getExternalStorageDirectory()獲取SD卡根目錄
5.在android中對資料庫做增刪改查有兩種方式分別是SQLiteDatabase這個類中的哪幾個方法 (B ).
A、 第一種方式execSQL()和rawQuery()方法操作,第二種方式直接提供封裝好的insert()、delete()、update()和query() 這四個方法操作;
B、 第一種方式execSQL()方法操作,第二種方式直接提供封裝好的insert()、delete()、update()和query() 這四個方法操作
C、 兩種方式都是用這個方法execSQL()
D、 兩種方式都是提供封裝好的insert()、delete()、update()和query() 這四個方法操作;
分析:這麼說可以,只是在查詢操作裡因為要返回值所以不能用execSQL()需要有rawQuery()
6.關於操作SQLite資料庫,不正確的說法是( C).
A、 SQLiteOpenHelper類用來建立資料庫和更新資料庫
B、 SQLiteDatabase類是用來運算元據庫的
C、 在每次呼叫SQLiteDatabase的getWritableDatabase()方法時,會執行SQLiteOpenHelper的onCreate方法。(反了)
D、 當資料庫版本發生變化時,可以自動更新資料庫結構
分析:
正確的是應該是先用建立一個類繼承SQLiteOpenHelper,SQLiteOpenHelper類裡面有onCreate函式可以建立表(僅在第一次建立資料庫有用),SQLiteOpenHelper是用來管理資料庫,運算元據庫(增刪改查)是用SQLiteDatabase
然後再getWritableDatabase獲取SQLiteDatabase即獲取資料庫
總結先是要helper再借助helper開啟資料庫
所以C反了,應該是現有helper裡的onCreate再有獲取資料庫getWritableDatabase
如果是隻讀getReadableDatabase
判斷題
- 關於Android中運算元據庫, SQLiteOpenHelper類是用於運算元據庫的.( )x分析:用SQLiteDatabase
- 建立一個資料庫幫助類TestDBHelper,需要繼承父類SQLiteOpenHelper後才具有管理資料庫版本的功能。( )v
- 填空題
- 在操作SQLite資料庫時__SQLiteDatabase_____是用於運算元據庫的。(增刪改查)
- SQLiteOpenHelper是一個__抽象_____類,該類用於建立資料庫和資料庫版本更新。(管理,onCreate,onUpgrade)
在Android中,通常使用__SharedPreferences_______儲存軟體設定的引數。