如何在java android上操作数组值
我有一个从SQLite返回值到Spinner传递的数组 在如何在java android上操作数组值,java,android,sqlite,spinner,Java,Android,Sqlite,Spinner,我有一个从SQLite返回值到Spinner传递的数组 在DatabaseHelper.java中,我创建了一个void public List<String> getSpinnerSupir(){ List<String> labels = new ArrayList<String>(); // Select All Query String selectQuery = "SELECT * FROM " +
DatabaseHelper.java
中,我创建了一个void
public List<String> getSpinnerSupir(){
List<String> labels = new ArrayList<String>();
// Select All Query
String selectQuery = "SELECT * FROM " + "sopir";
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
labels.add(cursor.getString(0)+cursor.getString(1));
} while (cursor.moveToNext());
}
// closing connection
cursor.close();
db.close();
// returning lables
return labels;
}
我需要操纵它
[Juniarto, Agus Haryanto, Supriadi, Cahyanto]
如何操纵它
谢谢您正在添加
第0列
和第1列
中的值。如果只需要第1列的值,请不要添加第0列的值
更改代码以添加项目,如下所示
labels.add(cursor.getString(1));
您正在添加来自
列0
和列1
的值。如果只需要第1列的值,请不要添加第0列的值
更改代码以添加项目,如下所示
labels.add(cursor.getString(1));
似乎您只需要每条记录中的第二列。打电话时:
labels.add(cursor.getString(0)+cursor.getString(1))代码>
你得到了你不想要的号码
相反,替换为labels.add(cursor.getString(1))代码>似乎您只需要每条记录中的第二列。打电话时:
labels.add(cursor.getString(0)+cursor.getString(1))代码>
你得到了你不想要的号码
相反,替换为labels.add(cursor.getString(1))代码>在getSpinnerSupir方法中从游标获取值时,也可以使用列名
而不是线下
labels.add(cursor.getString(0)+cursor.getString(1))
使用类似于
labels.add(cursor.getString(cursor.getColumnIndex("your_column_name"));
在getSpinnerSupir方法中从游标获取值时,也可以使用列名
而不是线下
labels.add(cursor.getString(0)+cursor.getString(1))
使用类似于
labels.add(cursor.getString(cursor.getColumnIndex("your_column_name"));
您正在将两列列0
和列1
添加到标签中
labels.add(cursor.getString(0)+cursor.getString(1))
因此,您的ID为列0,因此它将与字符串一起添加
修改为
labels.add(cursor.getString(1))
编辑
返回id和name
创建一个如下所示的类
class Data {
private String id;
private String label;
public Data(String id,String label){
this.id=id;
this.label=label;
}
}
在类中插入数据
ArrayList<Data> arrayList=new ArrayList<Data>();
arrayList.add(new Data(cursor.getString(0),cursor.getString(1)));
ArrayList ArrayList=new ArrayList();
添加(新数据(cursor.getString(0)、cursor.getString(1));
返回数组列表并使用它:)您将在标签中添加两列列0
和列1
labels.add(cursor.getString(0)+cursor.getString(1))
因此,您的ID为列0,因此它将与字符串一起添加
修改为
labels.add(cursor.getString(1))
编辑
返回id和name
创建一个如下所示的类
class Data {
private String id;
private String label;
public Data(String id,String label){
this.id=id;
this.label=label;
}
}
在类中插入数据
ArrayList<Data> arrayList=new ArrayList<Data>();
arrayList.add(new Data(cursor.getString(0),cursor.getString(1)));
ArrayList ArrayList=new ArrayList();
添加(新数据(cursor.getString(0)、cursor.getString(1));
返回数组列表并使用它:)如果要删除这些数字,只需使用正则表达式即可。为什么不只选择查询所需的内容?我猜数字是主键,所以只需选择names.labels.add(cursor.getString(0)+cursor.getString(1));这里有两列,需要将其更改为labels.add(cursor.getString(1));如果你想删除这些数字,只需使用正则表达式。为什么你不在查询中只选择你需要的呢?我猜数字是主键,所以只需选择names.labels.add(cursor.getString(0)+cursor.getString(1));这里有两列,需要将其更改为labels.add(cursor.getString(1));看来哈里亚诺并不孤单。2Agus和Haryanto之间没有逗号。他们在一起。错过了,比你!看来哈里亚诺并不孤单。2Agus和Haryanto之间没有逗号。他们在一起。错过了,比你!微调器上显示名称所需的getString(1)和获取id所需的getString(0),如果选中的微调器返回value=id,而不是向标签添加数据,则返回光标并获取微调器附近的数据,并将所需的值分配给微调器或使用具有id和名称的hashmap。此hashmap可以帮助您显示名称所需的getString(1)和获取id所需的getString(0),此时,微调器将显示名称,如果选中的微调器返回value=id而不是向标签添加数据,则返回光标并在微调器附近获取数据,并将所需的值分配给微调器或使用具有id和名称的hashmap,此hashmap可以帮助您