Este resultado de abajo es mi HashMap
valor que rellené eso por cláusula de bucle
private Map<String, String> days = new HashMap<>();
0 = {HashMap$HashMapEntry@4952} "2131689719" -> "2016-11-25"
1 = {HashMap$HashMapEntry@4953} "2131689683" -> "2016-11-26"
2 = {HashMap$HashMapEntry@4954} "2131689692" -> "2016-11-27"
3 = {HashMap$HashMapEntry@4955} "2131689686" -> "2016-11-26"
4 = {HashMap$HashMapEntry@4956} "2131689716" -> "2016-12-01"
y ahora, cuando intento buscar un valor para una clave determinada, como por ejemplo:
days.get("2131689719")
yo obtengo null
ACTUALIZADO:
int day = 0;
int dateOfWeeks = 10;
for (int i = 0; i <= 6; i++) {
((TextView) findViewById(food_list_values[i])).setText(dayOfWeeks[day]);
days.put(String.valueOf((findViewById(food_list_values[i])).getId()), foodList.get(dateOfWeeks).getDate());
day++;
dateOfWeeks++;
}
Respuestas
0 para la respuesta № 1Supongo que podrías haber agregado el valor como String
y tratar de obtenerlo como una Integer
lo que podría haber causado este problema. Por favor intenta lo siguiente
days.get(Integer.toString(findViewById(food_list_values[i])).getId()));
-1 para la respuesta № 2
Sospecho que los días del Mapa tienen solo un elemento. null, <last date>
esto aquí no es correcto
findViewById(food_list_values[i]))
findViewById normalmente utiliza los recursos de R.id que define en la aplicación de Android,