【问题标题】:Creating dynamic variable in Android在 Android 中创建动态变量
【发布时间】:2012-12-31 07:40:37
【问题描述】:

我有多个字符串,例如 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));    
    }
}

【问题讨论】:

    标签: android arraylist


    【解决方案1】:

    怎么样:

    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);
        }
    }
    

    【讨论】:

      【解决方案2】:

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

       //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)); 
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-11-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-10
        相关资源
        最近更新 更多