在地图中存储整数和字符串

时间:2010-11-29 02:16:32

标签: android

我有以下代码:

    public Map<String,?> createItem(String title, String caption) {

              Map<String,String> item = new HashMap<String,String>();
                           item.put(ITEM_TITLE, title);
                          item.put(ITEM_CAPTION, caption);
            (***)      item.put(ITEM_NUM, NUM);

行( * )我有错误我需要做的是添加整数

3 个答案:

答案 0 :(得分:4)

这将是一个糟糕的解决方案,并带走了泛型。不推荐这个,但你可以清楚地了解所有类(String,Number)如何扩展Object类。在Java 5之前,即在Generics之前,Map就像Map

public static Map<String, Object> mapTest(String title, String caption) {
        Map<String, Object> item = new HashMap<String, Object>();
        item.put("title", title);
        item.put("caption", caption);
        item.put("count", new Integer(2));
        return item;
    }

使用get(key)时,需要进行强制转换。

答案 1 :(得分:1)

您无法在字符串Map中添加整数。

答案 2 :(得分:1)

我实际上并不知道他为什么需要这个,如果他想创建Item然后可以使用oop;即更好地创建类Item {...}并且可以在其中保存数据,或者如果它是用于序列化的东西然后可以跟随以下内容: ( * )item.put(ITEM_NUM,“”+ NUM);