1
這是一個基本問題 - 但我是Android和Java的新手,請大家幫忙。 我試圖從數據庫(SQLite)中檢索所有行並將其顯示在屏幕上。 到目前爲止,它對於簡單的瀏覽和展示工作正常。Android:基本java +數組
但現在,我想添加邏輯。如果數組中的某個字段等於一個值,那麼我想執行一些操作,然後在屏幕上顯示該字段。
詳細信息 銀行表 - 銀行名稱,銀行餘額,銀行幣種。 我想讀取變量中的銀行貨幣(如果是美元),然後顯示銀行餘額。如果是INR,那麼我想將其轉換爲Bank Balance * 55,然後顯示新的餘額。
這裏是我當前的代碼
DB助手
public ArrayList<ArrayList<Object>> getAllRowsAsArrays()
{
// create an ArrayList that will hold all of the data collected from
// the database.
ArrayList<ArrayList<Object>> dataArrays = new ArrayList<ArrayList<Object>>();
Cursor cursor;
try
{
// ask the database object to create the cursor.
cursor = db.query(
BANKTABLE_NAME,
new String[]{BANKTABLE_ROW_ID, BANKTABLE_BANKNAME, BANKTABLE_BALAMT, BANKTABLE_CURRENCY},
null, null, null, null, null
);
// move the cursor's pointer to position zero.
cursor.moveToFirst();
// if there is data after the current cursor position, add it
// to the ArrayList.
if (!cursor.isAfterLast())
{
do
{
ArrayList<Object> dataList = new ArrayList<Object>();
dataList.add(cursor.getLong(0));
dataList.add(cursor.getString(1));
dataList.add(cursor.getInt(2));
dataList.add(cursor.getString(3));
dataArrays.add(dataList);
}
// move the cursor's pointer up one position.
while (cursor.moveToNext());
}
}
catch (SQLException e)
{
Log.e("DB Error in Retreive all", e.toString());
e.printStackTrace();
}
// return the ArrayList that holds the data collected from
// the database.
return dataArrays;
}
而這正是我打電話此陣
private void updateTable()
{
// collect the current row information from the database
ArrayList<ArrayList<Object>> data = db.getAllRowsAsArrays();
// iterate the ArrayList, create new rows each time and add them
// to the table widget.
for (int position=0; position < data.size(); position++)
{
TableRow tableRow= new TableRow(this);
ArrayList<Object> row = data.get(position);
TextView bankNameN = new TextView(this);
bankNameN.setText(row.get(1).toString());
tableRow.addView(bankNameN);
TextView balINRA = new TextView(this);
balINRA.setText(row.get(2).toString());
tableRow.addView(balINRA);
dataTable.addView(tableRow);
}
}
這是一個簡單的代碼來extact銀行的Java類名稱和金額,因爲它是。我想爲IF ELSE添加邏輯。 請指導我的代碼。謝謝!
或還可以通過使用這條線,balINRA.setText(將String.valueOf(row.get(2)* 55))跳過轉換; –
謝謝。工作! – Jasma
不要提及:-) –