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. 整数キーを使用してドローアブルからハッシュマップに画像を配置する
  2. ユーザー入力と比較するための配列[]を作成し、ハッシュマップのコンテンツをトラバースするためのループを作成し、
  3. 条件が真の場合に画像を表示します。

これは私がやりたいことの洞察ですが...今私の問題は、コードの前に画像が表示されないことです。私の質問は、hashtable をループする、またはCan't See Contents and noticeEnumerationに少し似ていると思いIteratorますが、コードにそれらを適用することはできません。誰かが私を導くことができますか、または私の問題を解決するための提案は問題ありません。

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ループが開始する前に1回実行されます。conditionループの各反復の前にチェックupdateされ、すべての反復の後に実行されます。

あなたinitializationint inte = 0;(一度実行された)でした。あなたconditionはだったinte == count、それは間違っている、なぜならinte0countあるからだ3。したがって、条件はfalseであり、ループはスキップされます。

于 2013-02-17T16:50:15.337 に答える