簡體   English   中英

從我的數據庫android獲取密碼。

[英]Getting passcode from my database android.

我真的不知道為什么我在localobject上出錯。 我試圖更改為字符串,但最后感到困惑。 有什么可以幫助的專家嗎?

public String getPasscode(){

    Object localObject2 = this.db;
    Object localObject1 = new String[1];
    localObject1[0] = "password";
    String[] arrayOfString = new String[1];
    arrayOfString[0] = "1";
    localObject1 = ((SQLiteDatabase)localObject2).query("register", (String[])localObject1, "r_id = ? ", arrayOfString, null, null, null);


    if (((Cursor)localObject1).getCount() == 0)
    {
       localObject2 = "";
    }

    else
    {
       ((Cursor)localObject1).moveToFirst();
       localObject2 = ((Cursor)localObject1).getString(((Cursor)localObject1).getColumnIndex("password"));
    }
    ((Cursor)localObject1).close();
    return localObject2;
}

為什么不使用字符串數組而不是對象

我的意思是使用

String[] localObject1 = new String[1];

代替

Object localObject1 = new String[1];

通過處理光標的方式創建另一個對象

Object localObject3 = ((SQLiteDatabase)localObject2).query("register", localObject1, "r_id = ? ", arrayOfString, null, null, null);

更改

Object localObject1 = new String[1];

Object[] localObject1 = new String[1];

您不是將其聲明為Array 據說localObject1[0]應該是Array時才是Object 您只是沒有正確地聲明它。

請參閱Java陣列文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM