Hashmap值转换错误

时间:2014-09-24 15:01:06

标签: java android hashmap

我的Android应用程序正在从google places api接收json。在该评级通常是浮点值。所以当我在下面的代码中将此评级作为双数据类型时,它说方法put(String,String)在HashMap类型中是不适用于参数(String,double)。所以我需要将此p.rating转换为字符串,以便将hashmap添加到arraylist以将其作为键,值对传递。我可以实现。

  // loop through each place
                        for (Place p : nearPlaces.results) {
                            HashMap<String, String> map = new HashMap<String,String>();


                            map.put(KEY_REFERENCE, p.reference);

                            // Place name
                            map.put(KEY_NAME, p.name);
                            map.put(KEY_EXTRA,p.rating);//here it says The method put(String, String) in the type HashMap<String,String> is not applicable for the arguments (String, double)


                            // adding HashMap to ArrayList
                            placesListItems.add(map);
                        }

2 个答案:

答案 0 :(得分:1)

您可以使用:

String rating = String.valueOf(p.rating);

答案 1 :(得分:1)

最好的办法是String.valueOf(p.rating)。请注意,如果NullPointerExceptionpp.rating

,这可能会引发null