如何在Map <> getParams()中使用Floats

时间:2019-06-18 06:23:17

标签: java hashmap

我正在将数据发送到``.php`脚本文件,该脚本文件将该数据存储到我的数据库中。

我为此使用Map<String, String>getParams()

但是,我对Java还是很陌生,无法弄清楚如何从Params返回Float

我需要在此处进行什么更改才能返回Floats

我不断收到Map必须为<String, String>的错误。

我尝试用各种陈述来更正Map和getParams,但这没有用。我也尝试删除,修复了所有错误,但应用程序崩溃了。

    protected Map<String, String> getParams() throws AuthFailureError {
        //Here is what I think i need to change
        Map <String, String>params = new HashMap();
        params.put("tire", tire);
        params.put("tire2", tire2);
        // tire and tire 2 are floats
        return params;
    }

我希望返回params将第一个选项作为String返回,将第二个选项作为Float返回。

2 个答案:

答案 0 :(得分:1)

地图的值类型为String,因此您需要将值转换/格式化为该值。您可以只使用Float.toString(float)

params.put("tire", FLoat.toString(tire));

或者您可能想用特定的小数位数(在这里四舍五入)格式化数字:

params.put("tire", String.format("%.2f", tire));

答案 1 :(得分:0)

您将需要更改方法签名以返回其他对象/类型。 因此,将Map<String, String>更改为Map<String, Float>

protected Map<String, Float> getParams() throws AuthFailureError {
    Map <String, Float>params = new HashMap<>();
    params.put("tire", 1.0f);
    params.put("tire2", 2.0f);
    return params;
}