Я получаю нулевое значение из своего hashmap. Это создание HashMap:Java hashmap возвращает null
private HashMap<String,Bitmap> thumbs = new HashMap<String,Bitmap>();
/* adding a single value to the hashmap */
Затем я перехожу к retreiving значение из HashMap, например, так:
public Bitmap getImageByFileName(String fileName) {
Bitmap fish = null;
Iterator it = thumbs.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pairs = (Map.Entry)it.next();
fish = (Bitmap)thumbs.get(fileName);
it.remove();
}
Log.i("shnitzel", " bitmap is " + fish);
fish = (Bitmap)thumbs.get(fileName);
Log.i("shnitzel", " final bitmap is " + fish);
return fish;
}
Файл журнала:
08-05 22:18:28.170: I/shnitzel(477): bitmap is [email protected]
08-05 22:18:28.170: I/shnitzel(477): final bitmap is null
Как вы можете видеть, Я использую ту же самую команду внутри и снаружи цикла while, но по какой-то причине она работает внутри нее, но не снаружи. Почему это происходит?
Вы не удаляете его во время цикла? –
:( Действительно, я просто добавил этот цикл while, чтобы понять, почему я начал получать нулевое значение. Я, честно говоря, понятия не имею, почему он не работал раньше, но теперь. Спасибо в любом случае :) –
Glad чтобы услышать, что проблема решена! Пожалуйста, выберите ответ, чтобы закрыть вопрос. –