0

所以我想出了这段代码

Map<Integer, Integer> images = new HashMap<Integer, Integer>();       
    images.put(1,R.drawable.a);     
    images.put(2,R.drawable.b);      
    images.put(3,R.drawable.c);

String[] abcd = {"a","b","c"};
    Integer count = 3;
    for(int inte = 0; inte==count;inte ++ ){
        if(strn.get(inte).equalsIgnoreCase(abcd[inte])){        
             image.setImageDrawable(getResources().getDrawable(images.get(inte)));          
        }
    }
  1. 使用整数键将图像从drawables放入hashmap
  2. 我制作了一个数组 [] 来与用户输入进行比较,一个 for 循环来遍历 hashmap 的内容和
  3. 如果条件为真,则显示图像。

这是我想要做的事情的洞察力,但是......现在我的问题是图像不会出现在我的代码之前。我认为我的问题有点类似于遍历 hashtableCan't See Contents and notice EnumerationIterator但无法将它们应用到我的代码中。有人可以指导我或任何建议都可以解决我的问题。

4

1 回答 1

0

改编自我在这里的回答:

改变

 for(int inte = 0; inte==count; inte++){
// start with inte beeing 0, execute while inte is 3 (count is 3)
// never true

 for(int inte = 0; inte < count; inte++){
 // start with inte beeing 0, execute while inte is smaller than 3
 // true 3 times

解释:

for 循环具有以下结构:

for (initialization; condition; update)

initialization在循环开始之前执行一次。condition在循环的每次迭代之前检查并在每次迭代update之后执行。

initializationint inte = 0;(执行一次)。你的conditionwas inte == count,这是错误的,因为inteis0countis 3。所以条件是false,并且循环被跳过。

于 2013-02-17T16:50:15.337 回答