Как достать контент HashMap и распространить его на Android? - PullRequest
0 голосов
/ 03 ноября 2011

У меня есть это:

HashMap<String, String[]> strs = new HashMap<String, String[]>(); 
String [] morning_food = new String [8];
String [] snack1_food = new String [6];
String [] lunch_food = new String [12];
String [] snack2_food = new String [4];
String [] nite_food = new String [10];

strs.put("Breakfast", morning_food);
strs.put("Snack1", snack1_food);
strs.put("Lunch", lunch_food);
strs.put("Snack2", snack2_food);
strs.put("Dinner", nite_food);

Как получить содержимое strs?Я хочу распечатать или отобразить его в журнал.Thx

Ответы [ 3 ]

1 голос
/ 03 ноября 2011

strs.toString()?

ИЛИ

Вы можете:

for (String[] vals : strs.values()) {
    for (String val : vals) {
        System.out.print(val);
    }
}
0 голосов
/ 03 ноября 2011
String[] str-new String[strs.size()];
Set set=strs.keySet();
for(int i=0;i<strs.size();i++){
str[i]=strs.get(set.get(i));
}

Здесь str массив будет содержать все значения. Также вы можете напрямую использовать strs.get (set.get (i)) .

0 голосов
/ 03 ноября 2011

strs.toString() вернет содержимое карты в виде строки. Он будет делегировать по умолчанию toString массивов, что, впрочем, не даст ничего полезного. Поэтому вы должны использовать List вместо String [] в качестве типа значения карты:

Map<String, List<String>> strs = new HashMap<String, List<String>>(); 
strs.put("Breakfast", new ArrayList<String>());
...

Коллекции, как правило, предпочтительнее массивов, в большинстве случаев.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...