在Android中初始化hashmap数据类型



我必须将参数发送到服务器。以下是我使用HashMap的代码。

我在此代码中遇到错误,我尝试将纬度和经度声明为double,并在Map中使用Double。如果这样做,我会开始在String类型的其他参数中遇到错误。

protected Map<String,Double,Double, String> getParams() {
    // Posting params to register url
    Map<String, Double, Double, String> params = new HashMap<String, Double, Double, String>();
    params.put("tag", "LocationUpdate");
    params.put("email", email);
    params.put("latitude", latitude);
    params.put("longitude", longitude );
    params.put("last_seen",last_seen );
    return params;
}

将其更改为此

 protected Map<String,String> getParams()
    {
        // Posting params to register url
        Map<String,String> params = new HashMap<String,String>();
        params.put("tag", "LocationUpdate");
        params.put("email", email);
        params.put("latitude", String.valueOf(latitude));
        params.put("longitude", String.valueOf(longitude));
        params.put("last_seen",last_seen );
        return params;
    }

因为地图是键值容器。由于在此示例中可以将所有内容解析为字符串,只要获得双打的字符串值,当您需要它们再次执行此类操作时:

double latitude = Double.parseDouble(params.get("latitude));

最好先查看Java Map API。

Map只有两个通用类型变量。因此,您只能使用两个类型的参数创建map

Map<String, Double> = new HashMap<String,Double>

在这里您的钥匙是类型String和类型Double的值。

最新更新