0

我有多个字符串,例如 st1、st2、st3、st4、st5、st6、st7。现在我想使用它的计数器(在我的情况下为 int i)通过 for 循环动态获取该字符串。像 "st"+ i ,但 android 不接受它,所以我应该怎么做才能动态获取字符串。有关更多信息,这里是代码块

String image1 = cData.getString(cData.getColumnIndex("fld_image_url1"));
String image2 = cData.getString(cData.getColumnIndex("fld_image_url2"));
String image3 = cData.getString(cData.getColumnIndex("fld_image_url3"));
String image4 = cData.getString(cData.getColumnIndex("fld_image_url4"));
ArrayList<String> imagesArray = new ArrayList<String>();

 //for adding the string in the arraylist dynamically
for(int i=1;i<=4;i++){
    if("image"+i!=null){
        imagesArray.add(String.valueOf("image"+ i));    
    }
}
4

2 回答 2

3

怎么样:

List<String> imagesArray = new ArrayList<String>();
for (int i = 1; i <= 4; i++) {
    String image = cData.getString(cData.getColumnIndex("fld_image_url" + i));
    if (image != null) {
        imagesArray.add(image);
    }
}
于 2012-12-31T07:42:54.950 回答
1

如果您想动态地从游标中获取值,请将您的代码更改为:

 //for adding the string in the arraylist dynamically
for(int i=1;i<=4;i++){

        int count = cData.getColumnIndex("fld_image_url"+i));
        if(count != -1)
         imagesArray.add(cData.getString(count)); 
}
于 2012-12-31T07:43:28.020 回答